大侠高手们,帮忙看看这个C++程序为何一输入数据就出错,很短的,谢谢了

来源:百度知道 编辑:UC知道 时间:2024/06/19 03:50:02
#include<iostream.h>
class intreal
{
public:
intreal(){}
double num2;
intreal(int a)
{
num2=a;
}

};
class Vector : public intreal
{
public:
int L;
intreal *AA;
Vector()
{
AA=NULL;
L=0;
}
Vector(int w)
{
AA=new intreal[w];
L=w;
}

};

class matrix:public Vector
{
public:
Vector *AA2;
matrix()
{
AA2=NULL;
}
matrix(int w):Vector(w)
{
AA2=new Vector[w];
L=w;

}

};

void main()
{
cout<<"输入维数:";
int n;
cin>>n;
matrix d1(n);
Vector d2(n);

cout<<"输入向量1,以空格间隔";
cin>>d1.AA2[0].AA[0].num2;
cout<<d1.AA2[0].AA[0].num2;
}

我知道什么错误,但是不知道怎么修改。

matrix(int w):Vector(w)
{
AA2=new Vector[w]; //这里是用默认构造函数去初始化的,就导致该类内AA的指针为NULL
L=w;

}