August 2021
Intermediate to advanced
450 pages
5h 35m
Chinese
类似所有标准库容器,vector是某种类型为T的元素的容器,即vector<T>。几乎任何类型都可以作为元素类型:内置数值类型(如char、int和double)、用户自定义类型(如string、Entry、list<int>和Matrix<double,2>)以及指针类型(如const char*、Shape*和double*)。当你插入一个新元素时,它的值被拷贝到容器中。例如,当你将一个整型值7存入容器,结果元素确实就是一个值为7的整型对象,而不是指向某个整型对象7的引用或指针。这样的策略促成了精巧、紧凑、访问快速的容器。对于在意内存大小和运行时性能的人,这是非常关键的。
如果你有一个类层次(参见4.5节),它可依赖virtual函数获得多态性,就不应在容器中直接保存对象,而应保存对象的指针(或智能指针,参见13.2.1节)。例如:
Read now
Unlock full access