- 1
o?o.f():{};
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+131
o?o.f():{};
Мне было стыдно постить это в С++.
http://www.gamedev.ru/flame/forum/?id=167142&page=2#m25
>Придумал новый оператор .? (null-coalescing call)
?:{}\\[=]^[&]::[]...::-%@$
Ой бля, это ж перл
Ещё тупая шутка про слишком закорючечный синтаксис:
БНФ-грамматика для перла:
symbol -> #0..#255
code -> code+symbol | empty
o&&o->f(),1;
А если o.f() возвращает правильный курсор, то
o&&o->f()&&o->f()->g();
Последнее конечно, если f() чиста и особенно приятно, если она маленькая и компилятор её элиминирует.
Вот только это все не красиво. Лучше монада MayBe)
скобки не забыл?
кому вообще нужна короткая запись такой неординарной в с++ операции?
обвязка вокруг weak_ptr? - так там многовато логики, что делать, если объект еще жив, и что делать, если уже нет - однострочник только ухудшит положение
это же не java, где надо постоянно уточнять, не null ли объект
XD
Ещё один камень в сторону модненьких парадигом.
"моя ошибка на миллиард"
даже плохому заказчику нужны хорошие значения
Таблица векторов прерываний в реальном режиме х86, например. То есть в ассемблерных языках, типа крестов или няшки - нужно