【发布时间】:2014-02-19 11:38:02
【问题描述】:
在以下代码中,构造函数仅在 Car() 执行时被调用一次(即)。为什么在语句 Car o1(Car()) 上没有第二次调用它?
#include <stdio.h>
#include <iostream>
class Car
{
public :
Car()
{
std::cout << "Constructor" << '\n';
}
Car(Car &obj)
{
std::cout << "Copy constructor" << '\n';
}
};
int main()
{
Car();
Car o1(Car()); // not calling any constructor
return 0;
}
【问题讨论】:
-
o1是一个函数声明。 -
这似乎是正确的