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
вот накидал
Joy
то есть, ссылка на указатель
Joy
я знал, что функция может возвращать значение, ссылку или указатель
Joy
с этими smart pointers чувствую себя тупым (
Surreal
то есть, ссылка на указатель
unique_ptr - это не указатель.
Ignat
указатель — вполне себе обычное значение
Surreal
unique_ptr - это не указатель.
И, как уже написали, с ссылкой на (действительно) указатель тоже проблем никаких не будет.
Oleg
сегодня на корехарде был мастеркласс от Полухина. Было охуенно. Видео не будет
Aidar
Почему gcc не нормально имплементирует оптимизацию loop unswitching?
Это не всегда быстрее работает чем цикл, гцц сам лучше знает
Aidar
Он раскроет оптимально
Joy
Ладно, спасибо и так. Пойду снова читать про эти сраные указатели
Alexander "SonnySlave"
Surreal
Это не всегда быстрее работает чем цикл, гцц сам лучше знает
Или нашел просто side effect'ы и не стал оптимизировать.
Oleg
да
Oleg
Aidar
Или нашел просто side effect'ы и не стал оптимизировать.
У сайд эффектов сохранится последовательность, но все остальное он попытается соптимайзить
Alexander "SonnySlave"
так что есть возможность посетить
знаю, поэтому и не пошёл сегодня 😊
Vladislav
я знал, что функция может возвращать значение, ссылку или указатель
функция может возвращать значение любого типа, в том числе ссылку на указатель
Aidar
Но то что это не всегда быстрее работает изи доказывается наличием кэша инструкций в процессоре
Vladislav
или указатель на шаблонную структуру, как в этом случае
Surreal
Кто-нибудь в курсе, про что Александреску будет рассказывать на питерской конфе? Про алгоритмы, C++ и D, как и на своих последних выступлениях в польском (или не польском) универе?
Surreal
Его выступления, где он рассказывал, как они оптимайзили hhvm в fb и сколько cpu time срезал им тот или иной сквернокод, были офигенны.
Surreal
А потом пошли выступления типа вот вам алгоритм, вот так его можно сделать оптимальнее, а в D это сделать еще проще.
Surreal
Потеряли мужика.
Anatoly
сегодня на корехарде был мастеркласс от Полухина. Было охуенно. Видео не будет
Паспорта забрали, подписку о не разглашении взяли? Или "охуенно и видео не будет" - это все что можно сказать?
Anatoly
ну, а что ты хочешь узнать?
ну, например, "научился обменивать два байта", "теперь умею реверсить строку за O(1)"
Oleg
Узнал про необходимость noexcept в move-ctor для своего типа, если хранишь в векторе
Dmitry
это про это - https://www.youtube.com/watch?v=AG_63_edgUg ?
Oleg
спасибо за инфу
Было еще пару любопытных моментов с мувом: что не надо делать мув для возвращения локальных переменных из функции и наоборот, надо, если получаешь в функцию rvalue и хочешь его вернуть
Oleg
И про то, что максимально обязательно делать треду джоин или детач
Yuri
Ребята, кто может помочь с перехватом функций?
Yuri
/html@FailsBot
Anatoly
Ребята, кто может помочь с перехватом функций?
https://msdn.microsoft.com/en-us/library/windows/desktop/ms644960(v=vs.85).aspx
Yuri
Не то) нужно перехватить функцию на линуксе, в бинарнике, из под либы загруженоц через LD_PRELOAD
Aidar
Читер?
Aidar
Или хакир?
Yuri
Нет, нужно расширить функционал приложения
Aidar
Это вроде называется читер
Yuri
Пусть так. 😊
Anatoly
Пусть так. 😊
а за читерство бан
Aidar
Лол
Yuri
Не смешно, есть приложение (игровой сервер) и очень сильно хочеться дописать расширение для него.
Aidar
Если софт проприетарный то вы скорее всего не имеете права это делать
ttldtor
если купил, то имеет
Aidar
если купил, то имеет
Это не так работает
Yuri
Сами разработчики в тихуб слили эту сборку. Кстати, если это поможет делу, внутри самого сервера есть дебаг символы, т.е. через gdb можно посмотреть ptype ы
Крылатый
Сервак разве без возможности скриптовать?
Yuri
Да. Знаю точно что люди через либы его расширяли.
Крылатый
А чо за сервак?
Yuri
Perfect World игра
Крылатый
Б-же, кто-то в неё ещё играет
ttldtor
Б-же, кто-то в неё ещё играет
ну на этом движке много дерьма написано...
Yuri
Именно перехват. Ловят функции ядра, и вертят как хотят
Yuri
Игра уже умирает, но аудитория еще есть.
Yuri
Кто то может подсказать куда копать?
Sergey