Mat::Mat(int R, int C)
{
Ar = new int[C*R];
Co = C;
Ro = R;
}
Mat::~Mat()
{
delete[] Ar;
}
然而我在这个“删除”上得到了“信号 SIGABRT”。
编辑:
我使用 XCODE,也尝试添加硬拷贝构造函数。我仍然在 delete[] 中收到此错误:
Mat::Mat(int R, int C)
{
Ar = new int[C*R];
Co = C;
Ro = R;
}
Mat::Mat(const Mat& M): Co(M.Co), Ro(M.Ro)
{
Ar = new int[M.Co*M.Ro];
for (int i = 0; i<(M.Co*M.Ro); i++) {
Ar[i] = M.Ar[i];
}
}
Mat::~Mat()
{
delete[] Ar;
}