Драфт C++0x [.pdf]. В нем будут делаться багфиксы, будут некоторые уточнения, но ничего принципиально нового уже не будет. Герб Саттер говорит, что это что-то вроде бета версии. Планируется, что после нее будет еще одна бета, а потом уже релиз.
среда, октября 29, 2008
пятница, октября 24, 2008
Странные примеры использования const
const - штука хорошая. Благодаря ему мы можем писать const-корректный код и избежать части глюков.
А вот несколько необычные примеры применения const.
1. void MyFunction ( const int var);
2. const int MyFunction();
3. int const MyFunction();
Предлагаю подумать над вопросами "что бы это значило?" и "где это можно применить?". И написать об этом в комментарии, если не лень.
Я свое мнение напишу чуть позже.
Updated
Как и обещала, мое мнение:
1. Нельзя будет поменять переменную var внутри функции. Я не знаю, возможно в чьих-нибудь стандартах кодирования заставляют так делать, но вообще это не принято.
2 и 3, как многие уже заметили, эквивалентны. И бесполезны. Обратите внимание, что возвращаемое значение const int. Если вы возвращаете класс, то смысл в этом будет.
Нет, можно придумать какие-нибудь странные использования этих выражений и даже заставить некоторые компиляторы их проглотить. Но вот Comeau на такое скажет
"ComeauTest.c", line 2: warning: type qualifier on return type is meaningless
const int MyFunction()И будет прав. Бессмысленны и const, и volatile. Я как-то случайно наткнулась на информацию, что когда-то в gcc было придумано некое расширение и volatile void имело какой-то смысл. Но это было давно и ныне deprecated.
Это к вопросу о применении. А вот вопрос "что это может означать?" - интереснее. Для меня любой из приведенных примеров кода - повод для беспокойства.
Например, вот это:
int const MyFunction()Это скорее всего кто-то перепутал с
int MyFunction() constВ-общем, это хороший повод пройтись по коммитам, найти автора и спросить "чувак, что ты хотел этим сказать?"
Категории: cpp
понедельник, октября 20, 2008
Четыре миллиарда рублей
Интересные слухи бродят среди программистов. Все уже, наверное, слышали про 4 миллиарда рублей, которые были начислены по ошибке некоему оперативнику. Который их вернул. Однако, прочитав внимательно заметки об этом удивительном происшествии, вы наверняка найдете упоминания о том, что до начисления у него на счету был "почти ноль". А четыре миллиарда - это примерно 232. Ну дальше рассказывать не надо, я думаю :-).
Категории: fun, programming
Metroid Prime 3: Corruption
Довелось мне тут поиграть в Metroid Prime 3: Corruption, это 3Д шутер выпущенный под Wii. Надо сказать, что 3Д шутер на Wii - это в принципе странная идея. Они там попытались как-то использовать возможности Wii'ных контроллеров, но получилось несколько притянуто за уши. Однако в плане программирования и графики игра сделана очень хорошо. Из платформы выжали вообще что только можно было, поэтому игра выглядит весьма достойно.
Игру лучше смотреть в движении, на YouTube есть ролик, но качество оставляет желать лучшего...
Категории: gamedev
