Введение Недавно ко мне подошли с вопросом, «что это и как этим пользоваться?», показав следующий код: extern "C" { void byteMaskDowngrade(byte***const byteMask, const byte *const *const && source) { // какой-то код. } // некоторые фукции. } Этим человек был мой коллега по работе и мы не сразу поняли, что в точности означает
Сегодня на сайте Государственного комитета по имуществу появился проект Указа Президента Республики Беларусь «О внесении изменений и дополнений в Указ Президента Республики Беларусь от 29 марта 2012 г. № 150». Пункт 2.16 в Проекте произвел эффект разорвавшейся бомбы для…
Когда мы преподаем современный C++, в самом начале мы учим, что все, что не подпадает под критерии малых данных (small data)1, по умолчанию должно передаваться через константные ссылки: Читать далее
Привет, интернет. Решил написать статью об указателях на методы классов. Недавно мне пришлось столкнуться с тем, как они работают изнутри, когда писал некоторые вещи ориентированные под компилятор. Эти указатели работают не совсем как обычные указатели, не имеют возможности быть приведенными в void, и часто имеют размер больше 8 байт. Информации на эту тему в интернете я нашел относительно немного, потому решил разобраться сам. Читать дальше →