【发布时间】:2011-08-29 12:03:51
【问题描述】:
可能重复:
Why should the copy constructor accept its parameter by reference in C++?
我知道复制构造函数必须有一个引用作为参数,以避免对其自身进行“无限次调用”。我的问题是 - 为什么会发生这种情况,其背后的逻辑是什么?
CExample(const CExample& temp)
{
length = temp.length;
}
【问题讨论】:
-
你有什么问题?请更加努力地问一些精确的问题。
-
我的意思是为什么会发生无限循环?
-
你在说什么无限循环?
-
一个无限循环,如果参数传递给 copy constr。不是参考 ---> (const CExample temp)
-
@Niello,那不是循环,那是递归。术语循环用于循环:for(;;){}、while(){}、do{}while()。
标签: c++ class syntax copy-constructor