c++ - 初始化静态成员时重新声明错误

标签 c++ class static-members

我做了一个类,里面有一些静态成员。

我用谷歌搜索“如何初始化静态成员”,我了解到我应该在类外初始化静态成员。

但是,我在初始化静态成员时遇到了重新声明错误。

我做错了什么?

#include <stdio.h>
#include <conio.h>
#include <iostream.h>

using namespace std;
class Color
{
public:
int r,g,b;
Color();
Color(int r_,int g_,int b_)
{
r=r_;
g=g_;
b=g_;
}
static Color Red;
};

int main()
{
Color Color::Red=Color(255,0,0);
return 0;
}

最佳答案

尝试将其移出main()

...
Color Color::Red = Color(255, 0, 0);
int main() 
{
...

关于c++ - 初始化静态成员时重新声明错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31800217/

相关文章:

C++ push_back, non const 复制构造函数

c++ - 如何使用 C++ 的字节码优化来初始化嵌入式 Python 解释器?

c++ - 为什么不能在 C++ 类中重新定义类型名称?

java - 静态类变量存储在内存中的什么位置?

c++ - QTKit 没有找到任何附加的视频输入设备

c++ - 简单 for 循环的意外无意义优化尝试(在 Visual C++ 2017 中)

c++ - 在类中初始化空数组

不能子类化的 JavaScript 类

c# - 静态方法调用

c# - 具有多个应用程序实例的静态成员行为 - C#