为什么将类实例传递到其自己的类构造函数中正确呢?

时间:2018-12-11 19:26:00

标签: c++

我对以下可以正确执行的代码感到好奇。

#include <iostream>
using namespace std;

class A
{
public:
    A(int a=1, int b=2){
        this->a = a;
        this->b = b;
    }
    void print_a(){
        cout<<a<<endl;
    }

private:
    int a;
    int b;
};

int main() {
    A aa = A(A());  //
    aa.print_a();
    return 0;
}

输出为1,这是正确的。

我对这种机制很好奇。

question之间的区别在于该问题的构造函数明确接受一个实例。

0 个答案:

没有答案