这里vector_base就是负责内存的分配与释放,vector则专注于对象的构造与析构,解耦了两个过程。vector中...
另外,由于vector_base_impl层是一个抽象层,没有任何元素,所以它的大小非常小,只有三个指针大小。这样就可以避免了在每个vector中都重复存储这三个指针,节省了内存空间。 总结 在vector的实现中,采用内嵌vector_base_impl分为两层的方式是为了将vector的内存管理和元素类型分离开来,提高代码的复用性和可维护性。vector...