Comments 23
А? Чего? Точки с запятой нет после return, ну вероятно опечатка в квизе. У функции _fpzero перепутаны аргументы(кто бы ещё показал декларацию этой функции, а ещё что такое amount и eps... Этой информации просто нет)
Оформление (подсветка синтаксиса? Форматирование?) не соответствует логике... Но тут даже нет логики....
Ну почему, последний вариант ответа правильный. Будет вызвана setAnglesXYZ()
, и ее "результат" (по всей видимостиvoid
) будет возвращен. А по отступам-то и не скажешь.
А, госпади. То есть опечатки не было и они намекали, что return и на следующую строку съехало другое, понятно. Я расценил это как опечатку в квизе
Не знал, что так вообще можно писать в C/C++ (делать return void). Каждый раз, когда думаю, что C меня уже ничем не сможет удивить, то всё-таки удивляет.
Кхм?
я "предвидел" и вставил код через копи паст на годболт, чтобы поискать там неюникод символы. Их не оказалось, так что код компилироваться не должен (redefinition), я что-то упускаю?
Это ограничения сайта при публикации статьи. Не будьте так строги. :)
Это баг в продукте компании, которая специализируется на ловле багов. Не надо так. Что если вы и анализатор так же пишете?
У нас сложная система публикации материала, включающая в себя собственный плагин для Word, конвертирующий специально оформленные документы в страницы сайта. Система предупреждает про неправильные написания терминов, названий проектов (свой словарь), символов (не используем табы в примерах кода), что в англоязычных материалах попали всякие русские (а, о), проверяющая корректность и доступность ссылок, размеры картинок (чтобы кто-то случайно не вставил фотку на 5 мегабайт) и ещё 100500 проверок. Можно сказать, что у нас ещё есть специализированный статический анализатор для документов :)
И мы точно не будем проталкивать во всю эту экосистему этот экзотический Unicode символ, чтобы один пример в одном квизе стал чуть лучше. Лучше наоборот разумно ограничивать возможности, поддерживаемы символы и т.д. В общем, комментарий не принимаю :)
Человек, который проходит этот квиз без ошибок, потенциально опасен для проекта. Это означает, что у него очень много опыта с очень плохим кодом. Возможно, что кроме этого есть и опыт с хорошим кодом, но в силу ограниченности человеческой жизни шансы ниже. Написание статического анализатора - единственная ниша, где подобное действительно полезно.
Квиз: На первой картинке действительно вертикальные линии вогнуты?:-)
С передачей указателя на мьютекс - так себе квиз. Так никто не делает, и это задача на внимательность, которую даже clang-tidy может отловить (но не проверял)
В вопросе 18 второй ответ корректен не всегда, а только в случае, если данный контейнер действительно инвалидирует итератор после push_back, поэтому я выбрал ответ 1. Мы ничего не знаем ни про контейнер, ни про вызывающего эту функцию, там, например, может быть std::vector c capacity достаточным, чтобы поместить все новые элементы, гарантируя, что push_back не инвалидирует итераторы. Кроме того, это вообще очень странный вопрос, т.к. похоже, что это вообще что-то не из std, т.к. вроде бы итератор format внезапно имеет is_stereo в качестве члена, иначе его бы разыменовывали через ->, а не через точку.
https://en.cppreference.com/w/cpp/container/list/push_back
No iterators or references are invalidated.
С auto и без объявления formats невозможно сказать что будет с итераторами, и есть ли они там вообще.
Квиз со звёздочкой для С++ программистов от Сергея Кушниренко