Я пытаюсь заставить Google Glog работать с Windows, но я получаю эти ошибки, которые я не могу понять.
// Variables of type LogSeverity are widely taken to lie in the range // [0, NUM_SEVERITIES-1]. Be careful to preserve this assumption if // you ever need to change their values or add a new severity. typedef int LogSeverity; const int INFO = 0; const int WARNING = 1; const int ERROR = 2; const int FATAL = 3; const int NUM_SEVERITIES = 4; 1>c:\users\<me>\documents\visual studio 2008\projects\sampleproj\sampleproj\src\windows\glog\log_severity.h(53) : warning C4091: '' : ignored on left of 'const int' when no variable is declared 1>c:\users\<me>\documents\visual studio 2008\projects\sampleproj\sampleproj\src\windows\glog\log_severity.h(53) : error C2143: syntax error : missing ';' before 'constant' 1>c:\users\<me>\documents\visual studio 2008\projects\sampleproj\sampleproj\src\windows\glog\log_severity.h(53) : error C2059: syntax error : 'constant'
Код, который вы не показывает, имеет следующую строку:
#define INFO 0
Это означает, что код, который вы показали, видится компилятором так:
const int 0 = 0;
который, конечно, не скомпилируется.
Ошибка должна быть где-то еще, может быть, в предыдущем заголовке?
Код, который вы разместили, компилируется без проблем: http://ideone.com/Wf64q
Ваши идентификаторы конфликтуют с некоторыми именами макросов, определенными где-то еще. Вы, вероятно, включили заголовочный файл Windows, который уже определяет макрос с таким именем.