- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
#define key \
keySequence.keys[i]
#define read_helper(val_) \
file.read( \
reinterpret_cast<char*>(&key.val_), \
sizeof(decltype(key.val_)) \
)
for (DWORD i = 0; i < keyPointer.Count; i++)
read_helper(RotationQuaternion);
for (DWORD i = 0; i < keyPointer.Count; i++)
read_helper(TimeValue);
for (DWORD i = 0; i < keyPointer.Count; i++)
read_helper(PositionValue),
key.SwapBytes();
#undef read_helper
#undef key
п.с. подаешь на вход макроса референс на большой объект и жрешь то самое...
Да, и правда страшно.
Кстати говоря даже в жабке мне иногда жаль что макросов нет
?
ну например хочу такое
Ну либо вообще в конфиг вынесешь, и не будешь ебать мозг с двумя сборками... JIT вроде обращение к static final оптимизирует даже если они из конфига были прочитаны.
Сишкобляди опять соснули со своими дефайнами.
и размер будет меньше
Я не могу вынести в конфиг, я не знаю как мой класс будет использоваться)
Правильный ответ -- завяжись на System.getProperties или env vars или JNDI (если ёбнутый ентерпрайзник времен JavaEE 6). Но всё это говено.
Проше было бы делать make debug и make release, правда?
вот в C# есть preprocessor (вообще в c# есть всё, как в Одессе) и никто не страдает
https://msdn.microsoft.com/en-us/library/ed8yd1ha.aspx
А еще там есть атрибут [Conditional("DEBUG")] чтобы добавлять метод только при дебаге
Как всегда в шарпике есть 150 способов сделать одно и тоже, в зависимости от твоего бекграунда (ну как там были ~ и finalize итд)
Даже не так - препроцессора нет, а директивы препроцессора есть
разве он не перед компиляцией работает?
Короче только ифы и дефайн совсем кастрированный
это как с генериками: генерики вроде есть, но до крестовых шаблонов им далеко
Очевидно что в тестовой версии я это хочу, а в продакшене -- нет
зы: в жабе естати есть assert, который как-бы включается через -ea.
но есть проблема: Долбоёбы написали assert doSomethingUseful(), и теперь нельзя запускаться без -ea, потому что useful не сделается
"всё такое вкусное, что же выбрать?"
http://stackoverflow.com/questions/3788605/if-debug-vs-conditionaldebug
не налабаешь:
скучный какой си с решоточкой
никакой магии
А где в коде sizeof(T&) ? Компилятор сопоставит с образцом, отпилит референс и в T положит реальный тип. Референсов на референс не бывает (бывает референс на указатель), поэтому тут всё ок.
...
}
https://www.google.com/search?q=if+(log.isDebugEnabled(
А нахер этой структуре SwapBytes? Как бы сериализатор должен свапать байты, а не сама структура...
Вот тот кто макросы предложил да, не в себе. Я подозреваю что он пьян.
> расковыривает
Ок, десериализатор.
Обратите внимание на запятую в конце второй строки. Я сначала подумал, что тут питоноошибка, но нет, мы просто не любим фигурные скобки!
Определитесь уже - вы змея или верблюд?
как тебе класс list?
Значит, ты на типы и классы зачем-то делишь, т. е. занимаешься искусственной хуйнёй.
Вообще говоря, как и следовало ожидать, это утверждение неверно.
Вот видите, какой простой и консистентный язык?
Я в своём утверждении имел в виду типы, определяемые пользователем, т.е. классы.
На самом деле нужно мыслить в терминах abstract data types.и не выебываться
Если говорить конкретно о Python, то там своя атмосфера и свои определения "типа" и "класса", которые исторически сложились и имеют мало общего со здравым смыслом.
А какое определение у класса в пайтоне кстати?
Чем int не класс если можно сделать так
Типы - логические выражения вида T, T -> T', T x T' из теории типов.
Т.е. они вообще друг на друга похожи примерно никак.
Например, у функции на Питоне:
def foo(bar): return baz
тип typeof(bar)->typeof(baz) но это можно отнести к разным классам - смотря как поделить и какое множество. Например, если множество: все функции, то этот класс описывает функции с одним аргументом.
А еще классы это такие комнаты, в которых сидят школьники.
Что общего между комнатами и подмножествами?
Ни те ни другие не имеют никакого отношения к классам в ООП.
Как и следовало ожидать, wvxvw увеличил количество ненужных букв в Интернете.
По аналогии мы можем сказать, что int — это class of integers, а number — это offspring/object/instance. Но мы не называем int классом только потому, что в языке с ним не связано ключевое слово “class”.
В современных языках снова понятие типа расширяется всяким вне-логическими свойствами, типа "владение" в Расте, но это по прежнему называют типом.
Да ладно, он тупо с симулы скопипастил.
Взглянул на синтаксис Симулы: begin...end, как в Паскале, но при этом тип перед переменной, как в Си. Да это же Алгол с классами!
"Я придумал термин «объектно-ориентированный», и вот что я вам скажу, я не имел ввиду С++."
> #undef key
Насрал и прикрыл газеткой.