Namespaces
Variants

std::meta::offset_of

来自 zh.cppreference.net
< cpp | meta
 
 
 
反射库
 
反射类型与查询
反射查询
反射布局查询
类型属性
类型属性查询
 
定义于头文件 <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表示以下之一:

  • 非静态数据成员
  • 未命名位域
  • 直接基类关系,且该基类不是虚基类,或者派生类不是抽象类

示例

参阅

从标准布局类型的起始位置到指定成员的字节偏移
(函数宏)