Тёмный

Антон Полухин - C++ трюки из Такси 

C++ User Group
Подписаться 15 тыс.
Просмотров 16 тыс.
50% 1

Опубликовано:

 

28 окт 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 15   
@knst
@knst 4 года назад
FastPimpl - шикарно!
@xvoidee
@xvoidee 4 года назад
Как всегда топ информация. Спасибо!
@ivan.kulenko
@ivan.kulenko 4 года назад
Как обычно пачкой выплёвывается миллион видео. Но начинаю всегда с Полухина.
@crea7or
@crea7or 4 года назад
А модули случайно из c++ 20 не помогут убрать проблему с фастпимпл? они же скроют все кишки что не экспорт?
@ingotsaper8117
@ingotsaper8117 3 года назад
+
@charlieking7600
@charlieking7600 Год назад
Тем временем модули всё ещё сырые.
@sunheretic13
@sunheretic13 Год назад
38:03. std::type_identity или boost::type_identity
@ПавелПоляков-ж2ж
@ПавелПоляков-ж2ж 4 года назад
На 22:55 Антон упоминает, что из std::exception "можно стектрейс вытащить иногда". Что он имеет в виду? Какую-то конкретную реализацию стандартной либы?
@AntonyPolukhin
@AntonyPolukhin 4 года назад
Можно либо запатчить C++ runtime, если вы полностью контролируете платформу. Либо вы, зная имя своего базового класса с стектрейсом, можете делать dynamic_cast для пойманного исключения. Если dynamic_cast успешный - достаёте трейс.
@Kotofay337
@Kotofay337 4 года назад
return Parse< T >( *this ); нельзя было написать?
@Stat1cV01D
@Stat1cV01D 4 года назад
Так он же привёл пример и на 34:45 он рассказал о минусах. Плюс будут сложности, если в T будет шаблон, а не тип. Поэтому он предлагает работать с T в отдельной структуре и передавать её параметром, с которым удобнее работать на примере 39:34 . Плюс на 38:07 он объясняет, зачем заключать эту вспомогательную структуру в namespace.
@matwey.kornilov
@matwey.kornilov 4 года назад
Но ведь на разных архитектурах для одного и того же типа могут быть разные значения sizeof(T) и alignof(T).
@vladshut8576
@vladshut8576 4 года назад
#ifdef MY_ARCH size = 64, align=16
@matwey.kornilov
@matwey.kornilov 4 года назад
@@vladshut8576 Ну это не плюс языка, когда придется для каждой платформы (архитектуры, компилятора, его версии) перечислять длинную простыню макросов.
@yuri12358
@yuri12358 4 года назад
@@matwey.kornilov Да, поэтому Антон привёл пару примеров как с этим бороться: завести какой-то списочек различных значений этих констант для различных платформ; или выбрать максимальные среди всех вариантов значения, если можно пренебречь лишними 8Б
Далее
Антон Полухин - C++ трюки из userver
1:01:03