22 C++垃圾回收机制 标准C++没有垃圾回收机制的原因: 1) 没有共同基类 C++是从C发展而成,允许直接操作指针,允许将一个类型转换为另一个类型,对于一个指针无法知道它真正指向的类型;而Java或C#都有一个共同基类 2) 系统开销 垃圾回收所带来的系统开销,不符合C++高效的特性,使得不适合做底层工作 3) 耗内存 C++产生的年代内存很少,垃圾回收机制需要占用更多的内存 4) 替代方法 C++C++有析构函数、智能指针、引用计数去管理资源的释放,对GC的需求不迫切