C++类里面的enum类型为啥不占内存而正常的enum却占用四个字节

你的A(实例)里面根本没有enumA。你只是写在里面,实际上不关A任何事情。

■网友
sizeof(A::EnumA)试试?
■网友
【C++类里面的enum类型为啥不占内存而正常的enum却占用四个字节】 你以为python呐

■网友
类型定义不占空间,这种元数据不启用rtti的时候是会在编译时直接抛弃的
顺便class A和enumA只有作用域上的区别,是完全独立的俩类型,为什么enumA要占classA的空间?
纠正,之前犯蠢写成了raii

■网友
编译的时候都预处理了,不需要占内存来保存它。
■网友
它属于类而不属于某个对象
■网友
类型定义为什么占用内存空间?你在类里定义一个enum类型的成员试一下


    推荐阅读