如果有一个POD http://en.wikipedia.org/wiki/Plain_old_data_structure结构体,带有一些成员变量,例如这样:
struct foo
{
short a;
int b;
char c[50];
// ...
};
有没有办法在不创建这种类型的对象的情况下获取成员变量的大小(以字节为单位)?
我知道这会起作用:
foo fooObj;
std::cout << sizeof( fooObj.a ) << std::endl;
std::cout << sizeof( fooObj.b ) << std::endl;
std::cout << sizeof( fooObj.c ) << std::endl;
编译器会优化以下内容并阻止对象的构造吗?
std::cout << sizeof( foo().a ) << std::endl;
您可以在 C++0x 中执行此操作:
sizeof(foo::a);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)