|
1
8
按以下方式构建赋值运算符:
对于这样一个简单的类,标准的复制和交换似乎有点过头了。 另外,您应该修复所有警告(即使它们像无符号不匹配一样简单)。如果你不修复它们,你将对它们的效力免疫,并且不会发现真正的问题,因为它被你忽略的警告所包围。因此,修复它们(aI总是打开标志,使编译器将所有警告视为错误,以便在出现任何警告时代码不会编译)。 实现赋值运算符的正确方法(或最常用的好方法)。使用复制和交换习惯用法:
|
|
2
4
这将返回一个引用。当函数返回时,会发生什么
把它改成
(通常还应通过引用而不是通过值获取参数。) |
|
|
3
3
|
|
4
1
首先,您的Location::operator=应该如下所示:
现在,这是曼德尔巴格,不是海森巴格。你有其他人在破坏记忆。祝你好运。 |