gpt4 book ai didi

c++ - 声明后初始化对象时“不匹配调用”

转载 作者:太空宇宙 更新时间:2023-11-04 15:47:54 25 4
gpt4 key购买 nike

下面的代码给了我

test2.cc:248:14: error: no match for call to '(Integrator) (Input, double)'
test2.cc:249:11: error: no match for call to '(Integrator) (Integrator&, double)'

关于编译。

class Integrator : public Block {
private:
...
Input input;
double init_value;
public:
Integrator();
Integrator(Input i, double initval = 0) : input(i), init_value(initval) {}
Integrator(Integrator &i, double initval = 0) : input(i), init_value(initval) {}
...
};

// + is overloaded
Input operator + (Input a, Input b) { return new Add(a,b); }

int main() {
Constant a(4.0); // Input
Integrator x,y;
...
x(y + a, 0.0); // + is overloaded for Inputs
y(x, -2.0);
...
}

我只发布了一些代码,因为这是我的作业。如果这些还不够,我可以添加更多。我看到类似的代码在工作,所以我尝试使用它(进行一些编辑)但它对我不起作用...

最佳答案

您不能在对象声明后对其进行初始化。 x() 尝试将 x 作为函数调用。

关于c++ - 声明后初始化对象时“不匹配调用”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13703202/

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