gpt4 book ai didi

c++ - 预期 { 在析构函数之前

转载 作者:行者123 更新时间:2023-11-30 01:46:17 29 4
gpt4 key购买 nike

我的新类(class) Fountainofyouth 遇到了问题。尝试构建整个项目后,调试器显示

warning: extended initializer lists only available with -std=c++11 or -std=gnu++11 [enabled by default]

和错误:应在“Fountainofyouth”之前使用“{”谁能告诉我这是怎么回事?Fountainofyouth.cpp 内容:

#include "Fountainofyouth.h"

//warning
Fountainofyouth::Fountainofyouth(int startDrinks) : Field
{
//ctor
}

//error
Fountainofyouth::~Fountainofyouth()
{
//dtor
}

string Fountainofyouth::fieldType()
{
return 0;
}

bool Fountainofyouth::canEnter(Unit* unit)
{
return 0;
}

void Fountainofyouth::affect(Unit* unit)
{

}

`

最佳答案

构造函数定义不应该有 : Field 部分:

Fountainofyouth::Fountainofyouth(int startDrinks) // : Field <- remove this
{
//ctor
}

如果您打算从 Field 继承 Fountainofyouth,那么请在类的定义中执行此操作,而不是在其构造函数中执行。

struct Fountainofyouth : Field
{
// declaration of ctor, dtor, etc.
};

或者,如果 FieldFountainofyouth 的成员,则 value initialize添加一对括号:

Fountainofyouth::Fountainofyouth(int startDrinks) : Field()
{
}

关于c++ - 预期 { 在析构函数之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33472089/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com