Code::blocks 抱怨参数类型
Code::blocks complaining about type of parameter
我正在构建 3D 游戏引擎。我用其他语言构建了很多,但最终决定获得 C++ 的速度优势(尽管不是特别了解)。
我有一个名为 EngineOptions
的 class,用于存储有关如何初始化引擎的信息。引擎的主要 class、Monolith
,然后采用 const
对选项实例的引用,如下所示:
monolith::EngineOptions options();
monolith::Monolith engine(options);
Monolith
有一个正确的头文件和这样的构造函数:
Monolith::Monolith(const EngineOptions& options) : m_options(options)
{
m_window(m_options.windowWidth, m_options.windowHeight, m_options.windowTitle);
}
虽然我认为这是正确的,但编译器抱怨存在:
no matching function for call to 'monolith::Monolith::Monolith(monolith::EngineOptions (&)())'
对不起,如果我是愚蠢的,但我认为这段代码是正确的,我错了吗?
我正在使用 Code::Blocks IDE 和我系统上提供的标准 GCC 工具链。
删除此行中的括号:
monolith::EngineOptions options();
编译器认为您正在声明一个返回 EngineOptions
实例的函数。
我正在构建 3D 游戏引擎。我用其他语言构建了很多,但最终决定获得 C++ 的速度优势(尽管不是特别了解)。
我有一个名为 EngineOptions
的 class,用于存储有关如何初始化引擎的信息。引擎的主要 class、Monolith
,然后采用 const
对选项实例的引用,如下所示:
monolith::EngineOptions options();
monolith::Monolith engine(options);
Monolith
有一个正确的头文件和这样的构造函数:
Monolith::Monolith(const EngineOptions& options) : m_options(options)
{
m_window(m_options.windowWidth, m_options.windowHeight, m_options.windowTitle);
}
虽然我认为这是正确的,但编译器抱怨存在:
no matching function for call to 'monolith::Monolith::Monolith(monolith::EngineOptions (&)())'
对不起,如果我是愚蠢的,但我认为这段代码是正确的,我错了吗?
我正在使用 Code::Blocks IDE 和我系统上提供的标准 GCC 工具链。
删除此行中的括号:
monolith::EngineOptions options();
编译器认为您正在声明一个返回 EngineOptions
实例的函数。