class MyClass
{
public:
enum ErrorCodes
{
ERR_SUCCESS = 1,
ERR_READ = 2,
ERR_WRITE = 3,
// ...
ERR_ALLOCATE = 99,
ERR_DELETE = 100
};
ErrorCodes DoSomething();
};
MyClass::ErrorCodes MyClass::DoSomething()
{
// ...
return ErrorCodes::ERR_SUCCESS;
}
在我的示例代码中有一个很长的enum
定义,其中包含 100 个变量。假设每个变量拥有 4 字节的内存,enum
则将使用 400 字节的内存。一旦我开始创建这个类的对象会发生什么?每个对象是否会因此而消耗额外的 400 字节内存enum
,还是会在此类的enum
所有对象之间共享,这样无论初始化的类实例数量如何,都只会使用固定的 400 字节?
如果要为每个实例使用 400 字节的内存,在这种情况下我可以使用什么替代方法?