war_zes
> ??? кто тебе запрещает?
а я про это ;)
з.ы. к тому же не писать инструкцию return 0; в теле main - признак дурного тона и говнокодерства :)
з.ы.ы и да, может быть ты не знал, но ретурн вовсе не обязателен в ф-иях. fixed
http://ideone.com/kaAEtq
cranky
это ub. И компилируется только из-за exit(0) (и походу, это и есть хак с помощью которого main разрешено не писать ретурн).
Еще раз повторю - я писал про то что только main разрешено не писать return и это оговорено стандартом. Все остальное - это пальба по ногам
war_zes
> это ub.
это не ub, вот ub: http://ideone.com/hgKqUl и то только в плюсах.
cranky
> з.ы. к тому же не писать инструкцию return 0; в теле main - признак дурного
> тона и говнокодерства :)
нихира это не признак.
писать без необходимости - признак говнокодера
cranky
> з.ы.ы и да, может быть ты не знал, но ретурн вовсе не обязателен в ф-иях. fixed
функции вида exit(0), либо броски исключений - это альтернативный способ осуществить выход из функции.
Вполне законный способ.
А вот если не указать return там где он должен быть, то это UB
Компиляторы вижал студии могут послать нафиг, например.
Kartonagnick
> нихира это не признак.
признак. во первых потому как правилами языка это определено, а во вторых потому как это общепринятая практика, все пишут return 0; в ф-ии main примеров в открытых проектах не искать.
> функции вида exit(0), либо броски исключений - это альтернативный способ
> осуществить выход из функции.
> Вполне законный способ.
копетан? :)
cranky
> признак. во первых потому как правилами языка это определено
По правилам языка для функции main делать явный return не обязательно. Это прописано в стандарте.
cranky
> а во вторых потому как это общепринятая практика, все пишут return 0;
Это не есть общепринятая практика.
cranky
> копетан? :)
Вы привели копетанский пример.
Я решил сделать уточнения.
Могу ещё одно:
int foo() { throw "trololo"; return 0; //<---- среагирует ворнингом: недостяжимый код }
Компиляторы в общем случае в состоянии распознать говнокод, и оценить "корректность выхода из функции"
На отсутствие return в main не среагирует ни компилятор, ни статический анализ.
Поскольку это законно.
Prokopovi4
> Кто может сказать конкретно: Что нужно знать о программирование чтобы написать
> самому свой движок для игры? Если можно то дайте название книг того что я
> должен знать что бы написать движок. Например: Если нужно знать язык C++ то
> книгу читать C++ для чайников. Я начинающий так, что опишите все подробно
> пожалуйста, что читать и в каком порядке. Заранее Огромное всем спасибо.
Найди и прочитай Game Coding Complete. Потом выборочно серию Game Programming Gems. Самое главное не бери пример с одного местного дурачка, который уже хрен знает какой год подряд начинает писать движок с нуля. То ему архитектура в движке не нравиться, то стиль кода, то организация папок в проекте, то на другую версию студии переходит. Так дальше тупой демки с ландшафтом он никуда и не ушел. Он почему-то думает что рендеринг в движке - это самое главное. Разрабатывая движок думай в первую очередь о его пользователях - дизайнерах уровней, как они будут делать на нем игровые уровни и локации. Движок это в первую очередь удобный инструментарий и во второю все остальное.
Kartonagnick
> Это не есть общепринятая практика.
"explicitly including a return from main is good practice" - об этом в книгах пишут: http://www.amazon.com/dp/020170353X/?tag=stackoverfl08-20
Kartonagnick
> На заборе тоже пишут.
ясно.
cranky
> ясно.
Вот и ладушки.
Kartonagnick
прав был тарас, ты - дебил.
cranky
> прав был тарас, ты - дебил.
Насколько я помню, такую оценку Тарас давал вам и Зеффику.
Вы утверждаете, что ретурн из майн - обязателен:
> потому как правилами языка это определено
Рекомендую вам подучить с++ вместо того, что бы кидаться какашками, когда сказать больше нечего.
Kartonagnick
> Вы утверждаете, что ретурн из майн - обязателен
не надо выдергивать слова из контекста, правилами языка определено возвращать значение из тела ф-ии, в объявлении которого указан тип возвращаемого значения. из ф-ии main возвращать 0 считается признаком хорошего тона.
cranky
> не надо выдергивать слова из контекста, правилами языка определено возвращать
> значение из тела ф-ии, в объявлении которого указан тип возвращаемого значения.
> из ф-ии main возвращать 0 считается признаком хорошего тона.
У вас пластинку заело? А то давайте по новой: #39.
Признаком хорошего тона считается не делать что либо без необходимости.
Вот любопытно, у вас вообще в башке есть понимание того, почему для main в стандарте узаконили такое исключение?
Наверное, было бы понимание, не было бы сейчас от вас таких глупостей.
Тема в архиве.