C++ 无法访问类中的常量静态成员

C++ 无法访问类中的常量静态成员,c++,C++,我已经阅读了这份文件 并尝试在我的编译器中测试,这里的所有内容是否都是代码的副本 #include <iostream> #include <string> using namespace std; class MyClass { public: const static char* MyClass::enumText[]; }; const char* MyClass::enumText={"a","b","c","d"}; int main(){

我已经阅读了这份文件 并尝试在我的编译器中测试,这里的所有内容是否都是代码的副本

#include <iostream>
#include <string>

using namespace std;
class MyClass {
public:
    const  static char* MyClass::enumText[];
    };
const  char* MyClass::enumText={"a","b","c","d"};
int main(){

    std::cout<<MyClass::enumText[0]<<endl;


    return 0;
}

我用Visual C++ 2010,为什么这样的错误是什么?请帮助< /p> ,应该是:

const  char* MyClass::enumText[]={"a","b","c","d"};
// You forgot these           ^^

我认为您只是缺少了enumText定义末尾的[](就在={…。

您忘记了变量定义中的
[]
const char*MyClass::enumText[]={“a”、“b”、“c”、“d”};
您缺少了[]。应该是这样的
const char*MyClass::enumText[]={“a”、“b”、“c”、“d”};

#包括
#包括
使用名称空间std;
类MyClass
{
公众:
常量静态字符*枚举文本[];
};
const char*MyClass::enumText[]={“a”、“b”、“c”、“d”};
int main()
{

很抱歉,伙计们,我今天累了,犯了个很酷的错误,对不起,我错过了括号。这不应该是
{'a','b','c','d'};
?没关系,我明白了,他现在想要的是
char
指针数组,而不是
char
数组。不过,我还是把这个放在一边,以防其他人被搞砸了。
const  char* MyClass::enumText[]={"a","b","c","d"};
// You forgot these           ^^
#include <iostream>
#include <string>

using namespace std;
class MyClass
{
public:
    const static char* enumText[];
};
const char* MyClass::enumText[] = {"a","b","c","d"};
int main()
{
    std::cout<<MyClass::enumText[0]<<endl;

    return 0;
}