Nikita
хотя ладно, это уже мои ночные загоны начались
Vladislav
сделай template<T> using is_const_reference = std::is_const<std::remove_reference_t<T>>;
Nikita
пасиб
Max
Где адекватно прочесть про const-qualified?
Surreal
Достаточно, наверное, почитать, что такое тип, почему ссылка - не тип, про sizeof для ссылки тоже полезно почитать, ну и стандартно все вариации указателей, бинарную и логическую константность, ну и const_cast. Все есть в стандарте.
Igor
Точно есть? Инфа 100%?
Ignat
146%
Anonymous
И явка 146℅ 😂🤪🤪🤪😐🤪🤪
Anonymous
Почему gcc не нормально имплементирует оптимизацию loop unswitching?
Anonymous
Хню написал, пойду спать... Но я попробовал сам оптимизировать с помощью макросов, и получилось намного лучше
Anonymous
Может это из за того, что у меня там двойной цикл? М?
Alexander "SonnySlave"
пример можешь на годболте наваять?
Joy
Парни, разбираю тут пример чужого кода, как такое может быть, функция компилится без вопросов
std::unique_ptr<State>& getCurrentState() { return m_state; }
где тип m_state соотв. std:unique_ptr<State>
Это что вообще, ссылка на указатель? 0_о
Joy
http://cpp.sh/4mihy
Joy
вот накидал
Vladislav
Joy
то есть, ссылка на указатель
Joy
я знал, что функция может возвращать значение, ссылку или указатель
Joy
с этими smart pointers чувствую себя тупым (
Ignat
указатель — вполне себе обычное значение
Oleg
сегодня на корехарде был мастеркласс от Полухина. Было охуенно. Видео не будет
Aidar
Aidar
Он раскроет оптимально
Aidar
Joy
Ладно, спасибо и так. Пойду снова читать про эти сраные указатели
Alexander "SonnySlave"
Oleg
да
Oleg
Aidar
Но то что это не всегда быстрее работает изи доказывается наличием кэша инструкций в процессоре
Vladislav
или указатель на шаблонную структуру, как в этом случае
Surreal
Кто-нибудь в курсе, про что Александреску будет рассказывать на питерской конфе? Про алгоритмы, C++ и D, как и на своих последних выступлениях в польском (или не польском) универе?
Alexander "SonnySlave"
Surreal
Его выступления, где он рассказывал, как они оптимайзили hhvm в fb и сколько cpu time срезал им тот или иной сквернокод, были офигенны.
Surreal
А потом пошли выступления типа вот вам алгоритм, вот так его можно сделать оптимальнее, а в D это сделать еще проще.
Surreal
Потеряли мужика.
Igor
Oleg
Anatoly
ну, а что ты хочешь узнать?
ну, например, "научился обменивать два байта", "теперь умею реверсить строку за O(1)"
Oleg
Узнал про необходимость noexcept в move-ctor для своего типа, если хранишь в векторе
Anatoly
Dmitry
это про это - https://www.youtube.com/watch?v=AG_63_edgUg ?
Oleg
спасибо за инфу
Было еще пару любопытных моментов с мувом: что не надо делать мув для возвращения локальных переменных из функции и наоборот, надо, если получаешь в функцию rvalue и хочешь его вернуть
Oleg
И про то, что максимально обязательно делать треду джоин или детач
Aidar
Anatoly
Oleg
Yuri
Ребята, кто может помочь с перехватом функций?
Yuri
/html@FailsBot
Yuri
Не то) нужно перехватить функцию на линуксе, в бинарнике, из под либы загруженоц через LD_PRELOAD
Aidar
Читер?
Aidar
Или хакир?
Yuri
Нет, нужно расширить функционал приложения
Aidar
Это вроде называется читер
Yuri
Пусть так. 😊
Aidar
Лол
Yuri
Не смешно, есть приложение (игровой сервер) и очень сильно хочеться дописать расширение для него.
Aidar
Если софт проприетарный то вы скорее всего не имеете права это делать
ttldtor
если купил, то имеет
Yuri
Сами разработчики в тихуб слили эту сборку. Кстати, если это поможет делу, внутри самого сервера есть дебаг символы, т.е. через gdb можно посмотреть ptype ы
Крылатый
Сервак разве без возможности скриптовать?
Yuri
Да. Знаю точно что люди через либы его расширяли.
Крылатый
А чо за сервак?
Yuri
Perfect World игра
Anatoly
Крылатый
Б-же, кто-то в неё ещё играет
Yuri
Именно перехват. Ловят функции ядра, и вертят как хотят
Yuri
Игра уже умирает, но аудитория еще есть.
Yuri
Кто то может подсказать куда копать?