有人能告诉我为什么在这种情况下,程序会使用复制构造函数和析构函数吗?
#include <iostream>
#include <iomanip>
using namespace std;
class Object
{
public:
Object(){}
Object(const Object &kk) {cout<<"kk"<<endl;}
bool operator==(Object c)
{
cout<<"o=="<<endl; return false;
}
~Object()
{
cout<<"des"<<endl;
}
};
int main()
{
Object o1,o2;
bool result;
result = (o1==o2);
}
结果是:
kk
o==
des
提前感谢您的回答。
答案 0 :(得分:2)
因为您的<div class="left-sidebar col-md-3">
<div class="sidebar-menu col-xs-6 pull-right">
menu
</div>
</div>
<div class="right-content col-md-9>
<div class="content-text col-xs-10>
content
</div>
</div>
按值获取其参数。
按价值计算意味着副本。
改为使用const-reference,就像你为复制构造函数所做的那样。