정적 데이터 멤버 두 개를 초기화하고 싶습니다. 두 파일정적 멤버를 초기화하는 방법
// 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을 포함하는 각 클래스에 작성하고 로거 :: 오류합니다. 어떻게이 두 멤버를 초기화해야합니까?
LoggerConcrete Logger::error = LoggerConcrete(LOG_DEBUG);
LoggerConcrete Logger::write = LoggerConcrete(LOG_DEBUG);
yuup을 나는 잊어 버렸습니다. 감사 – Maus