вторник, 3 апреля 2018 г.

И ещё раз про AppVeyor

Недавно отвалился билд со странной, периодически появляющейся ошибкой от devenv - "This operation should only take place on the UI thread". Гугл по ней ничего полезного не дал, все файлы были в порядке.

Исправил тем, что поменял devenv на msbuild для сборки. И всё заработало без проблем. 

Ещё недавно переоткрыл для себя braced initialization в C++ . Вот здесь в примерах плохо понятно, почему это круто, но на самом деле даже при переприсваивании объекта можно серьёзно сэкономить в объёме на названии конструктора.

Например какой-нибудь код, вида :  m_current_line->ToId = Maybe<unsigned int>(m_current_rule->Id);  запросто превращается в m_current_line->ToId = {m_current_rule->Id}; ,а это уже на 20 символов меньше к набору и чтению. И в чтении теряются только типы, которые не всегда так уж важны. Удобно!