C++里为什么运算符重载时参数要传引用?

2025-02-22 21:25:21
推荐回答(1个)
回答1:

引用传递是C++特有的参数传递方式。这种传递方式会带来许多优点,当然也稍不留神,也会带来问题。
重载=、+、-、*、/、+=、-=、*=、/=时,通常形参采用引用传递,由于类对象占用内存较大,引用传递时,无需在栈内存中开辟空间以装载临时对象,也省去了复制的耗时过程,为了避免改变形参的内容,还需配以const加以修饰。
例如:
classname &operator+(const classname &classobject);
形参的引用传递不是必须的,但返回引用则是必须的。