我想初始化两个静态数据成员。请查看这两个文件:
// Logger.h
class Logger
{
public:
static LoggerConcrete error;
static LoggerConcrete write;
};
并且
//Logger.cpp
Logger::error = LoggerConcrete(LOG_DEBUG);
Logger::write = LoggerConcrete(LOG_DEBUG);
Logger.cpp 文件中两个静态成员的初始化无法正常工作,编译器(g++)报错如下:
g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"Logger.d" -MT"Logger.d" -o"Logger.o" "../Logger.cpp" ../Logger.cpp:13: error: expected constructor, destructor, or type conversion before '=' token ../Logger.cpp:14: error: expected constructor, destructor, or type conversion before '=' token
我希望在每个包含 Logger.h 的类中使用 Logger::write 和 Logger::error。我该如何初始化这两个成员?