引发异常:B :: getX()返回nullprt;

时间:2019-07-14 22:03:29

标签: c++ constructor compiler-errors

我正在将Alpha类A(B& be):a{*be.getX()},b{*b.getY()} {}添加到类A。引发异常:B :: getX()返回nullprt;

我的代码在这里。 B()构造函数有用吗?我应该和另一个B(int&,int&)将其分配给x和y。

class B
{
private:
    int *x;
    int *y;

public:
    B() { x = nullptr; y = nullptr; }
    int* getX() { return x; }
    int* getY() { return y; }

};

class A
{
private:
    int a;
    int b;


public:

    A() { a = 0; b = 0; }
    int getA() { return a; }
    int getB() { return b; }
    A( B& be) :a{ *be.getX() }, b{ *be.getY() } {} 
};

int main()
{
    B aB;
    A a1 = aB;
    A a2;
    a2 = aB;

    return 0;

}

Exception thrown: Beta::getX() returned nullprt;

0 个答案:

没有答案