c++非静态数据成员的无效使用
Invalid use of non static data member C++
这是我的代码
main.cpp
#include <iostream>
#include "header.h"
#include "source.cpp"
using namespace std;
int main()
{
cout << "Hello world!" << endl;
int testarray[]={1,3,5,7};
mymatrix* first=new mymatrix(testarray,2,2);
return 0;
}
和header.h
using namespace std;
#include <iostream>
#include <string>
class mymatrix{
public:
int i;
int j;
int marray[];
mymatrix(int m[],int rows,int cols ) : marray(m),i(rows),j(cols)
{
cout<<"this is for testings ";
}
mymatrix()
{};
~mymatrix(){
// delete[] marray;
};
};
无效使用非静态数据成员mymatrix:: I
我想做的是创建一个我的并传递一个数组
从
转换int marray[];
int *marray;
另外,要么使用C范例,要么使用c++范例,但不要混合使用。
代替
mymatrix* first=new mymatrix(testarray,2,2);
使用mymatrix first(testarray,2,2);
让编译器替你分配和释放内存。
如果你对使用的c++库没有限制,可以考虑使用std::vector
库来管理你的动态数组。
不是在对象外部管理内存,而是在对象内部管理内存,特别是在构造函数和析构函数内部。
相关文章:
- 错误: 无效使用非静态数据成员"应用程序::应用程序构造函数"
- 当使用嵌套类功能时,使用非静态数据成员的使用无效,但是当函数未固定时可以
- 使用矢量指标对非静态数据成员的使用无效
- 非静态数据成员错误的使用无效
- 错误:非静态类数据成员的使用无效
- 在结构中访问数组时无效使用非静态数据成员
- 错误:非静态数据成员的使用无效,在此范围内未声明变量
- 使用const变量时,非静态数据成员的使用无效
- 非静态数据成员c++的使用无效
- 在迭代向量的 for 循环中无效使用非静态数据成员
- 错误:无效使用非静态数据成员"容量"int data[容量];
- Clang:错误:非静态数据成员的使用无效
- 错误:在 C++ 中无效使用非静态数据成员'NNetwork::NH'(也适用于 NH 和 NI)
- C++对非静态数据成员的使用无效
- 错误:非整型 'const char[]' 的静态数据成员的类内初始化无效
- Arduino错误(C++):非静态数据成员的使用无效
- C++ 无效使用非静态数据成员
- Cpp.中的私有静态数据成员只能在其定义时初始化,而类内初始化无效
- C++ 无效使用非静态数据成员
- 非静态数据成员的使用无效