【发布时间】:2010-12-10 23:34:53
【问题描述】:
我想在我的头文件中定义一个常量 char* 以供我的 .cpp 文件使用。所以我试过这个:
private:
static const char *SOMETHING = "sommething";
这给我带来了以下编译器错误:
错误 C2864:“SomeClass::SOMETHING”: 只有静态 const 整数数据 成员可以在一个 类
我是 C++ 新手。这里发生了什么?为什么这是非法的?你怎么能这样做呢?
【问题讨论】:
-
您应该改用“static const char* const SOMETHING”,除非您真的希望能够在运行时重新分配 SOMETHING 以指向其他东西。