我想构建一个Default Constructure,它使用方法loadfile从File初始化我的attribut(这是一个实例)。如果无法加载文件,我也想要抛出异常,如果是这种情况,我需要调用我的reset()函数。
对于以下代码,在尝试编译时,我总是在try行中得到相同的错误。
Env.cpp:16:8:错误:在尝试'尝试'
之前预期不合格的ID
Env::Env() **// default constructor of Env class**
: terrain **// terrain is an instance of a class I declared in hpp file**
{
try
{Env::loadFile();} **// the method loadfile throws an error it failed**
catch(std::runtime_error)
{std::cerr << " Error " << endl;
Env::reset();} **// calls reset function if file loading failed**
}
答案 0 :(得分:0)
编译器认为{ try ... }
是terrain
的 brace-init-list 。如果你打算默认构造它,那就这样做:
: terrain{}
{
...
或者这个:
: terrain()
{
...
如果terrain
是class
的实例,则或省略整个成员初始化列表。