c++ - 静态数据成员是否可以在 C++ 中键入其容器类型?

标签 c++ static types member

我在 C# 或其他语言中使用过类似的东西。

// C#, but I can't remember correctly. Just assume like a pseudo code.
class A
{
    public int b;
    public A(int newB)
    {
        b = newB
    }
    public static const A a1 = A(1);
    public static const A a2 = A(2);
    public static const A a3 = A(3);
}

在 C++ 中有类似的东西吗?或者任何推荐的方法来做到这一点?我这样做只是为了在其类名中组织 a1a2a3

最佳答案

Is there equivalent of this in C++?

以下 C++ 代码等同于您的 C# 代码:

class A
{
    public:
    int b;
    A(int newB) : b(newB)
    {
    }

    //declaration
    static const A a1;
    static const A a2;
    static const A a3;
};

//definition - necessary!
const A A::a1 = A(1);
const A A::a2 = A(2);
const A A::a3 = A(3);

关于c++ - 静态数据成员是否可以在 C++ 中键入其容器类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5443119/

相关文章:

c++ - 为什么这个生成随机数的代码总是产生相同的数字?

C++ MySQL 链接器错误

java - 多线程环境中具有静态引用/对象的同步块(synchronized block)

scala - 高阶函数中的类型定义和类型不匹配

JavaScript 类型转换

c++ - 如何判断一个多边形是凹的还是凸的?

c++模板化类,带有指向可变函数的函数指针

java - Android:如何在内存中创建和保存 map View 以供所有 Activity 使用

c++ - 静态类或实例指针

c - 指针分配二维数组指针的警告消息