将一个数组复制到函数内的另一个数组时的运行时指针异常
Runtime pointer-exception while copying one array to another inside a function
主要目标是从main()
函数复制构造函数中的数组。使用cin >>
非常容易,但我必须给构造函数一个已经定义的数组。编译程序时我没有收到任何错误。仅在运行时失败,并出现以下异常:
引发未处理的异常:读取访问冲突。 this->A 是 0x1110112。
我已经尝试在类中定义这些数组,即使我知道这不是一个好的做法。但我不能这样做,因为它会导致此类中定义的另一个函数中的指针出错。这是我到目前为止得到的:
#include "pch.h"
#include <iostream>
#include <iomanip>
#define size 5
using namespace std;
class Matr
{
private:
//const int size = 5;
double **A;
double *B;
public:
Matr(double (*a)[size], double b[]) {
for (int i = 0; i < size; i++) {
for (int j = 0; j < size; j++) {
A[i][j] = a[i][j]; //here exception falls
}
B[i] = b[i];
}
}
};
int main()
{
double A[5][5] = { {-6,18,15,8,6},
{2,11,-18,17,23},
{-13,-2,8,-10,-5},
{1,13,11,-10,-5},
{10,21,8,-1,11} };
double B[5] = { 0,-8,1,-2,-6 };
Matr matr(A,B); //define the arrays
}
我想将其定义为类中的数组,以便在其他函数中使用它们。这甚至可能吗?:D
在Matr
构造函数中,应使用new
为A
和B
分配内存。
相关文章:
- 在c++中为double类型的数组创建一个unique_ptr
- 从数组构造一个跨度<shared_ptr<T>><shared_ptr<void>>
- 给定一个单词数组和一个字符串,如何计算给定字符串中的所有单词
- 如何将 v8::FunctionCallbackInfo<v8::Value> 数组从一个隔离复制到另一个隔离?
- 我怎么能有一个以2D数组为参数的函数,而数组有一个我想更改的参数/维度
- 为什么我的数组输出一个不在其中的元素
- 数组 - 最后一个索引
- 将数组作为一个参数从一个函数传递到C 中的另一个函数
- 从字符串数组创建一个字符数组
- 如何在C 中的小写中将文本从数组的一个维度传递到另一个维度
- 在对结构数组的一个成员进行排序后,移动其成员的其余部分
- 为什么数组在一个文件中打印,但在发送到另一个文件时却缺少数字
- C++,为什么多维数组的一个元素的增加似乎增加了另一个元素
- 将数组的一个元素与整个数组元素进行比较
- 如何将数组从一个函数传递到另一个函数
- 查找最大和连续子数组-另一个版本
- 使用for循环将char数组的一个元素复制到另一个元素
- C++如何将变量char数组从一个函数传递到另一个函数
- 数组 ->另一个空的 int 数组混淆
- 用另一个字符数组替换一个字符数组