C++中string的Reserve() 和 capacity()
来源:互联网 发布:涂子沛 大数据 txt 编辑:程序博客网 时间:2024/06/05 14:09
reserve
原型:
#include <string> void reserve( size_type size = 0 );
函数reserve()将字符串的容量设置为至少size. 如果size指定的数值要小于当前字符串中的字符数(亦即size < this→size()), 容量将被设置为可以恰好容纳字符的数值. reserve()以线性时间(linear time)运行.
resize
原型:
#include <string> void resize( size_type size, char val = char() );
函数resize()将字符串的尺寸设置为size. 如果val被指定, 则新创建的元素都将被初始化为val. 此函数以线性时间(linear time)运行.
capacity
原型:
#include <string> size_type capacity() const;
函数capacity()返回string预先保留的最大元素数量. 例如, 下面的代码使用两个不同的方法设置两个vector的容量. 一个方法传递一个实参给构造函数为初始化的尺寸提供建议, 另外一个方法调用reserve函数达到类似的目的:
vector<int> v1(10); cout << "The capacity of v1 is " << v1.capacity() << endl; vector<int> v2; v2.reserve(20); cout << "The capacity of v2 is " << v2.capacity() << endl;
运行之后, 上面的代码产生如下输出:
The capacity of v1 is 10 The capacity of v2 is 20
C++容器被设计为可增长的动态尺寸. 这样可以将程序员从可以存储任意数量元素容器的烦恼中解放出来. 而且, 有时候程序员可以通过提供容量的期望值以提示编译器提高程序性能. 这些提示可以像上面的例子那样通过reserve()和构造函数告知编译器期望的容量大小. capacity()函数以常量时间(constant time)运行.
- C++中string的Reserve() 和 capacity()
- C++中string的Reserve() 和 capacity()
- C++ vector中size/resize和capacity/reserve的区别
- vector中capacity,reserve
- c++中capacity和size的区别,以及reserve和resize的区别,shink_to_fit用法
- c++ vector中resize、reserve、push_back和capacity
- 读书笔记--resiz capacity和reserve
- vector的reserve和resize以及capacity和size
- STL中vector的capacity、size、reserve、resize
- STL容器的capacity()和reserve()演示-----vector
- C++顺序容器的capacity和reserve方法
- C++中vector和string的reserve用法(转载)
- C++基础---string类的capacity/max_size/size/length/empty/reserve/resize
- Vector的使用:resize、size、reserve、capacity
- 关于C++中Size和Capacity的问题
- C++学习笔记之——vector的size和capacity、resize和reserve的区别
- STL中容器的几个容易混淆的成员函数-size, capacity, resize, reserve
- STL中容器的几个容易混淆的成员函数-size, capacity, resize, reserve
- 分享12套超酷的后台管理员界面网站模板
- discuzx模板制作中必须知道的变量、循环、判断、文件嵌套
- android 百度地图
- UVa 10004 - Bicoloring
- java速成
- C++中string的Reserve() 和 capacity()
- boost源码剖析之:多重回调机制signal(下)
- 【自然框架】之通用权限:数据库设计的几种使用方式
- C语言中定义原型
- 浅谈HTTP中Get与Post的区别
- android 条码识别软件开发全解析(续2详解绝杀!)
- duckling 下面的页低端栏“XXXX协同工作环境”,文字修改方式
- js 控制 Windows Media Player
- SQLITE3 使用总结(SQL语句操作,加密)