我有一个 C 类,我在其中重载了 Normal、复制构造函数和赋值运算符,以打印被调用的内容。
我编写了以下代码来测试什么时候被调用?
C c1; --> Normal Constuctor .. // understood Fine
C c2;
c2 = c1; --> Normal constructor + assignment operator .. //understood Fine
C * c3 = new C(C1) --> Copy constructor // Understood Fine
C c4 = c1 --> copy constructor // Not Able to understand
这似乎让我感到困惑,因为在这段代码中虽然我在声明时进行了初始化,但它是通过赋值运算符而不是复制构造函数..我理解错了吗?