我和我的同事正在辩论const或引用成员是否适用。const和引用成员会使类不可复制,也不能移动,除非您编写自己的复制和移动操作符,忽略引用或常量成员。我找不到忽略某些成员的复制或移动的情况,只因为它们是引用或常量而有意义。
我认为拥有不可移动对象在逻辑上很少有意义,这只与类是否位置不变有关。不可复制的对象更为常见,但使类不可复制的选择与其是否持有逻辑上不可复制的资源,是否表示唯一所有权等有关。我想不出仅具有引用或常量成员与否的类应该具有这些特性(不可复制或不可移动)的原因。
它们是否应该被使用?应该使用其中一个而不是另一个吗?有哪些例子?
我认为拥有不可移动对象在逻辑上很少有意义,这只与类是否位置不变有关。不可复制的对象更为常见,但使类不可复制的选择与其是否持有逻辑上不可复制的资源,是否表示唯一所有权等有关。我想不出仅具有引用或常量成员与否的类应该具有这些特性(不可复制或不可移动)的原因。
它们是否应该被使用?应该使用其中一个而不是另一个吗?有哪些例子?