RAII与智能指针

41 阅读1分钟

请勿滥用封装

图一

image.png 图二

  1. 在图一中,下面的类,这样对所有的属性都加上get和set方法是不对的,因为他只有一个属性,不需要封装
  2. 在图二中,当我们需要给vector加容量的时候,需要resize长度,这是需要封装的,因为当他改变size长度的时候,需要有其他操作(重新分配内存,复制之前的内存,释放之前的内存)
  3. 因此,当给一个属性操作时,会产生衍生操作的时候,才需要进行封装