繁体   English   中英

无效使用非静态数据成员C ++学生

[英]invalid use of non-static data member c++ student

我是一个刚开始编程的菜鸟,我想知道为什么我会收到一条错误消息,内容为:无效地使用了非静态数据成员'Lavirint :: n'?

class Lavirint{
private:
    int n, m;
    bool mapa[n + 2][m + 2]; //is this valid?
...
}

编辑-我在同一行中添加了一些其他变量,但它们不会引起更多错误。

否。无效。 您不能在没有特定对象的地方使用成员变量,但是也不能在编译时使用未知的任何值来确定类中C数组的大小。

您引用的实际错误消息是指第一个(也是较难理解的)问题。 您的成员变量仅在特定对象的上下文中具有值,但是类的结构是所有对象的共同点,并且在构造任何对象之前已定义。

第二个问题更根本,但是第一个问题显然使编译器停止了对第二个问题的注意。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM