在CppCoreGuidelines item C.21中,this示例显示了在=default
类中声明为AbstractBase
的复制/移动特殊功能。然后继续说
并提供了第二个示例,其中使用=delete
声明了函数。
如果我有一个要在继承层次结构中用作基类的类,我是否应该始终使用第二个示例并删除复制/移动特殊功能以防止 slice ?如果它使类容易出错,为什么还要改用=default
?
最佳答案
这完全取决于您的用例:
关于c++ - 我何时会默认(而不是删除)在基类中进行复制和移动操作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52597074/