gpt4 book ai didi

c++ - 如果我在静态类中创建一个枚举,会有什么不同吗?

转载 作者:行者123 更新时间:2023-11-30 02:11:04 25 4
gpt4 key购买 nike

基本上,如果我不这样做,所有对象都会获得所有枚举值的拷贝?

ps:一如既往,欢迎引用您的答案...

最佳答案

使用 enum 关键字实际上是在定义一个类型,而不是像数据成员那样定义存储。

就像定义一个内部类,像这样:

class X
{
private:
class InnerClass
{
...
};
};

InnerClass 定义只是一个定义。它只是在外部类 X 的上下文中定义了类型,因此 InnerClass 只能称为 X::InnerClass。但它绝对不会占用 X 类实例中的任何空间。

关于枚举的说明:枚举值实际上是整数,这些整数在代码中需要的地方使用。通常没有所有枚举值的中央存储。枚举只是定义了标记和数值之间的映射,代码中使用标记的任何地方,编译器都会用数值替换它。

关于c++ - 如果我在静态类中创建一个枚举,会有什么不同吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3937897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com