Anatoly
Только учти alignment
Aleksey
Так-так-так, что у нас говорит Стандарт про memory layout ? 😊
каждый класс располагает поля в порядке объявления?
Aleksey
Только учти alignment
а как его учесть в случае класса? сделать пустые поля-заполнители?
Alexander "SonnySlave"
Nonstatic data members of a (non-union) class with the same access control (Clause 11) are allocated so that later members have higher addresses within a class object. The order of allocation of non-static data members with different access control is unspecified (11). Implementation alignment requirements might cause two adjacent members not to be allocated immediately after each other; so might requirements for space for managing virtual functions (10.3) and virtual base classes (10.1).
Aleksey
Да, но это не для этого чата
мне лучше с такими вопросами в @supapro?
Ioann_
ну это для мелкософта :D
Anatoly
ну это для мелкософта :D
gcc разве не поддерживает эту прагму?
Matwey
Да, но это не для этого чата
В этом чате компилятор имеет право переставлять члены случайным образом?
Alexander "SonnySlave"
В этом чате компилятор имеет право переставлять члены случайным образом?
Nonstatic data members of a (non-union) class with the same access control (Clause 11) are allocated so that later members have higher addresses within a class object. The order of allocation of non-static data members with different access control is unspecified (11). Implementation alignment requirements might cause two adjacent members not to be allocated immediately after each other; so might requirements for space for managing virtual functions (10.3) and virtual base classes (10.1). как видишь, имеет право
Anatoly
В этом чате компилятор имеет право переставлять члены случайным образом?
Хз, определенно можно сказать, что он определен только для членов с одинаковым классом доступа, хотя для меня это сейчас стало новостью. Какое-то блядство, а не язык :)
Square
Hyperscan быстрее всего
Да вот только это как микроскопом гвозди заколачивать. Libpcre и аналоги лучше подходят
Square
К тому же гиперсканом не так просто найти leftmost match. Да и вообще руками придётся из буфера совпадения выбирать
Anonymous
у кого есть эта древняя книжка, или может кто знает где взять (спиратить)? Angelika Langer, Klaus Kreft -Standard C++ IOStreams and Locales ISBN: 0 201 18395 1 Publisher: Addison-Wesley Pages: 640pp Reviewer: Francis Glassborow
Anonymous
Angelika Langer, Klaus Kreft -Standard C++ IOStreams and Locales
🐙 Antony
а зачем она может пригодиться в 2018?
Egor
У меня есть подозрение, что информация про локали там уже безнадёжно устарела. Хотя чёрт его знает. Вообще что-то гуглится по запросу Standard C++ IOStreams and Locales filetype:pdf
Anonymous
ее можно читать
Anatoly
@antoshkka а поясни Nonstatic data members of a (non-union) class with the same access control (Clause 11) are allocated so that later members have higher addresses within a class object. The order of allocation of non-static data members with different access control is unspecified (11). Implementation alignment requirements might cause two adjacent members not to be allocated immediately after each other; so might requirements for space for managing virtual functions (10.3) and virtual base classes (10.1). я с 1999 года был уверен, что data-member-ы располагаются в структуре в порядке их объявления, а вчера узнал, что это распространяется только для одного класса доступа и слегка прифигел
Anatoly
https://stackoverflow.com/a/36149568/767632 Вероятно, гарантии на порядок нужны только для совместимости с Си, а там у нас всяко будет без private/public?
ну, например, список инициализации может заложится на порядок следования членов, где может возникнуть микс с классами доступа. а на поверку оказалось, что я не могу на это закладываться. вообщем, что-то пошатнулось в стройной картине моего мира :)
Egor
Там вроде только про layout говорится, а не про порядок инициализации.
Egor
В "порядок инициализации == порядок объявления" я пока всё ещё верю.
Anatoly
хороший хинт, спасибо!
Anatoly
allocation в данном контексте размещение != инициализации, ну и на том спасибо!
Vitaliy
When an object of some class C is created, each non-static data member of non-reference type is allocated in some part of the object representation of C. Whether reference members occupy any storage is implementation-defined, but their storage duration is the same as that of the object in which they are members.
Vitaliy
Я же написал в скобках выше
Berkus
ее можно читать
подозреваю что это более вредно, чем полезно сейчас
Anatoly
то что порядок размещения дата-мемберов в памяти может отличаться от порядка их объявления.
Kirill
Приветсвую, подскажите, может кто сталкивался, задача слушать все что идет на COM порт (физический либо виртуальный) т.е к на комп порт подключена железка COM (либо COM over USB) и все что отправляется с пк через данный COM есть необходимость собирать это все себе локально - уже перегуглили, пока актуально вроде бы использовать хуки для перехвата системных функций, кто сталкивался?
Vitaliy
Я лишь имел ввиду, что ссылки тоже располагаются не в том порядке, в котором расположены в классе.
Anonymous
хотел написать что Джосатиса не предлогать - видимо стоило написать
Anonymous
книжка Джосатиса есть у меня
Kirill
serial port sniffer
PortMon не воркает по x64, либо же как самим сделать и снифать - кто делал?! либо может быть есть готовый инструмент что бы работал в фоне - как служба
Anonymous
I/O в плюсах меня бесит, хочу по-лучше понять что это за хрень
Сережа
воркает
Kirill
Advanced Serial Port Monitor 15 дней бесплатно
ок, спрошу чуть по другому, кто делал это самостоятельно - не используя сторонее
Сережа
вообще я когда то помню использовал софт для перехвата системных вызовов в винде
Сережа
там вызовы write read тоже должны
Kirill
ReadFile может быть, но тогда занимается вроде бы порт а нужно подслушивать
🦥Alex Fails
Есть такая у меня в помойке:
🦥Alex Fails
Неотсортированная помойка книг из (supa)pro.cxx и соседних чатов: https://t.me/joinchat/AAAAAE1yUq2Kh6WdPCtjMA #procxx #books
Anonymous
смотрел
Anonymous
Значит нигде нет скорее всего )
Anonymous
стоп
Anonymous
смотрел на либгене
Anonymous
libgen.io
Anonymous
смотрел на либгене
Я начал замечать что чтение книг не так эффективно как просто перепечатывать хороший код
Max
Если понравился стиль, мол, перепиши от руки. Так проще отметить особенности и фишки
Berkus
Значит нигде нет скорее всего )
вон же алекс запостил ссылку
Anatoly
Я начал замечать что чтение книг не так эффективно как просто перепечатывать хороший код
не знал о таком методе и что удалось перепечатать за жизнь? буст?
Anonymous
🦥Alex Fails
И там есть эта нига
Berkus
И там есть эта нига
нетолерантненько!
Anonymous
нет, нету
🦥Alex Fails
Самая крайняя
Anonymous
первая и последняя
Anonymous
#book #physics #gamedev #programming
Anonymous
Vyacheslav
Быстрее питона пока не встречал обработку регулярок но про руби тоже хорошо отзываются, но для виндового приложения clang вполне справляется и со стандартной либой regex
В перле регулярки быстрые, например для простых регекспов с альтарнативами /(Ruby|Python|Java|J2ee)/ используется алгоритм Ахо-Корасик https://habrahabr.ru/post/343116/#comment_10569044
Vyacheslav
offtop
🦥Alex Fails
Это и есть по стд библиотеке
Anonymous
я знаю что там есть -читал ее
Anonymous
не нужно про STL, надо именно ввод-вывод
Anonymous
про cppreference я вкурсе
Berkus
не нужно про STL, надо именно ввод-вывод
открываешь сорцы стдлибы и читаешь, интереснее любой книги
Berkus
потом начинаешь разговаривать примерно так: xsputn tellg oflow
🦥Alex Fails