std::meta::offset_of
Определён в заголовочном файле <meta> | ||
|---|---|---|
consteval std::meta::member_offset offset_of( std::meta::info r ); | (начиная с C++26) |
Возвращает смещение нестатического члена-данных или прямого базового класса, представленного r, относительно содержащего его класса std::meta::parent_of(r).
Параметры
| r | - | отражение нестатического члена-данных или отношения с прямым базовым классом |
Возвращаемое значение
Пусть V — смещение в битах от начала полного объекта типа, представленного std::meta::parent_of(r), до подобъекта, связанного с тем, что представляет r. Возвращает std::meta::member_offset{V % CHAR_BIT, V % CHAR_BIT}.
Исключения
Выбрасывает std::meta::exception, если r не представляет одно из следующего:
- нестатический член-данных
- безымянное битовое поле
- отношение с прямым базовым классом, для которого либо базовый класс не является виртуальным, либо производный класс не является абстрактным
Пример
См. также
| смещение в байтах от начала типа стандартного размещения до указанного члена (макрос функции) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/meta/offset_of