我正在尝试编译一个使用log4cxx的项目,这是一个c ++日志框架。然而,一旦我下载了框架并将其作为依赖项添加,我就会收到此错误:
'Locale':看起来像一个函数定义,但是没有参数列表;跳过明显的身体
这发生在locale.h中,如下所示:
#ifndef _LOG4CXX_HELPERS_LOCALE_H
#define _LOG4CXX_HELPERS_LOCALE_H
#include <log4cxx/logstring.h>
namespace log4cxx
{
namespace helpers
{
class LOG4CXX_EXPORT Locale
{
public:
Locale(const LogString& language);
Locale(const LogString& language, const LogString& country);
Locale(const LogString& language, const LogString& country,
const LogString& variant);
const LogString& getLanguage() const;
const LogString& getCountry() const;
const LogString& getVariant() const;
protected:
Locale(const Locale&);
Locale& operator=(const Locale&);
const LogString language;
const LogString country;
const LogString variant;
}; // class Locale
} // namespace helpers
} // namespace log4cxx
#endif // _LOG4CXX_HELPERS_LOCALE_H
这种语法有什么问题吗?我根本不了解C ++,但我不知道它会出现什么问题。
互联网上我能找到的唯一一件事就是:https://issues.apache.org/jira/browse/LOGCXX-147这是完全合理的,因为我正在瞄准一个windows ce设备(尽管使用Visual Studio 2008代替2005)。建议在“cpp文件”中包含log4cxx / logstring.h,我认为它们的意思是locale.cpp,但如果我明显误解了这个请告诉我。它说会摆脱编译错误,但不幸的是我做了那件事并没有做任何帮助:(。
我知道这可能有点过分但是有谁知道如何解决这个问题?