写矩阵快速幂的类时
class Matrix {
/* static */ const int N = 15; //把static注释掉
int a[N][N]; //出现错误提示:非静态成员引用必须与特定对象相对
};
不太理解为什么类中数组的大小要用静态常量对象。在一个C++交流群问了这个问题,有指出:不用静态常量的话这个数组的大小就不是编译期间确定,而是变成动态分配了。
不能完全理解,等到再仔细学完动态内存分配时回来更新。。。
写矩阵快速幂的类时
class Matrix {
/* static */ const int N = 15; //把static注释掉
int a[N][N]; //出现错误提示:非静态成员引用必须与特定对象相对
};
不太理解为什么类中数组的大小要用静态常量对象。在一个C++交流群问了这个问题,有指出:不用静态常量的话这个数组的大小就不是编译期间确定,而是变成动态分配了。
不能完全理解,等到再仔细学完动态内存分配时回来更新。。。