关于 C++ 的三法则是什么?


使用 C++ 时,三法则是一个经验法则。这条法则相当于一种良好的实践规则,其指出,如果你的类需要任何以下操作

  • 一个拷贝构造函数,
  • 一个赋值运算符,
  • 或者一个析构函数,

明确定义,那么它可能会需要全部这三个操作。

这是为什么?因为如果你的类需要上述任何一个操作,那么它正在管理动态分配的资源,并且可能会需要其他操作才能成功实现这一点。例如,如果你需要一个赋值运算符,那么你将创建当前通过引用复制的对象的拷贝,从而分配资源。你需要使用拷贝构造函数进行拷贝,以及使用析构函数释放这些资源。


更新于: 2020 年 6 月 23 日

115 次浏览

助力您的 职业 起航

完成课程,获得认证

开始学习
广告
© . All rights reserved.