STL
zhuozhibin
这个作者很懒,什么都没留下…
展开
-
STL容器各项操作并非绝对安全
在侯捷翻译的《C++标准程序库》里面提到(第六章,P144)“一般而言,各项操作并非绝对安全。调用者必须确保传给操作函数的参数符合需求。违反这些需求(例如使用非法索引)会导致未定义的行为。通常STL自己不会抛出异常。如果STL容器所调用的使用者自定操作(user-defined operations)抛出异常,会导致各不相同的行为。”如vector为空时,vecto原创 2015-01-25 15:06:24 · 362 阅读 · 0 评论 -
vector大小与容量的关系
vector优异性能的秘诀之一,就是配置比其所容纳的元素所需更多的内存。vector中的函数capacity()返回vector实际能够容纳的元素数量,如果超出这个数量,vector就会重新配置内部存储器。一旦内存重新分配,和vector相关的所有引用、迭代器、指针都会失效,而重新分配这些有很耗时间,所以如果需要速度的场景下,vector容量需要考虑。可以使用reserve()来保原创 2015-01-25 15:07:47 · 3434 阅读 · 1 评论