我想初始化两个静态数据成员。查看两个文件
// 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++) 错误:
我想在包含 Logger.h 的每个类中使用 Logger::write 和 Logger::error。我必须如何初始化这两个成员?
最佳答案
您需要指定类型:
LoggerConcrete Logger::error = LoggerConcrete(LOG_DEBUG);
LoggerConcrete Logger::write = LoggerConcrete(LOG_DEBUG);