C++输入输出流
vector
-
动态数组,vector v;
-
最后位置插入,v.push_back(type);
-
当前元素个数,v.size();
-
当前容量,v.capacity();
(扩容机制:当size()==capacity()时,如果还要继续插入元素,就会按照2*capacity大小扩容,接着将老的空间元素拷贝到新的空间,然后将新的元素插入到新空间后面,最后将老的空间进行回收
虽然造成效率下降,但是如果老空间后面位置不够,直接在其后申请空间就会造成错误)
-
提前预留空间,v.reserve();
-
遍历,for(auto &p: v){ }
(带引用就没有拷贝的操作)
字符串I/O
-
头文件sstream
-
通常用来做格式转换
-
委托构造函数可以、不重复地使用成员初始化列表
(减少代码重复)
-
isalpha()
(判断是否是字母)
字符串输入流istringstream
string line;
istringstream iss(line);
iss >> key >>value;
cout<<key<<"-->"<<value<<endl;
字符串输出流ostringstream
string int2string(int number){
ostringstream oss;
oss << number;
string str = oss.str();
return str;
}
字符串输入输出流stringstream
stringstream ss;
ss << key <<value;
ss >> key >>value;