1、C++采用一下三种方法之一管理指针成员:
1)指针成员采用常规指针型行为。这样的类具有指针的所有缺陷但无需特殊的复制控制。
2)类可以实现所谓的“智能指针”行为。指针所指向的对象是共享的,但类能够防止悬垂指针。
3)类采用值型行为。指针所指向的对象是唯一的,由每个类对象独立管理。
2、定义智能指针的通用技术是采用一个使用计数。智能指针类将一个计数器与类指向的对象想关联,使用计数跟踪该类有多少个对象共享同一指针,使用计数为0时,删除对象,使用计数有时也称为引用计数。
3、处理指针成员的另一个不同的方法:给指针成员提供值语义。具有值语义的类所定义的对象,其行为很像算术类型的对象:复制值型对象时,会得到一个不同的新副本,对副本所做的改变不会反映在原有对象上。