我将 SFML 库用于图形和其他内容,例如矢量。在我的 Brain 课上,我尝试做一些类似的事情:
class Brain{
Brain(int size){
Vector2f directions[size];
}
}
但它抛出一个错误,说它必须评估为一个常数。我尝试了各种方法,但无法正确编译。任何人都知道为什么会发生这种情况,我该如何解决?
正如 C++ 中的注释所建议的,必须在编译时知道数组的大小……如果您需要动态容器,可以使用std::vector
.
class Brain {
public:
Brain(int size) : _directions{size}
{
}
private:
vector<Vector2d> _directions;
};
不要忘记对您的类的公共和私有访问...默认情况下,所有内容都private
在一个类上,因此在您的代码片段中,该类的构造函数是私有的!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句