&传引用

 

字符串:(类比OC中NSString

string就是一个字符数组

#include<string>

string a;

a.push_back('m');

a.pop_back();

a.size();

a.length();

a[1]='x';

 

if(a.find('x') != string::npos) {//字符串a中找到x

}

 

for(int i = 0; i < a.length(); i++) {

 cout<<a[i]<<endl;

//或者赋值操作 a[i] = 'a';

}

 

数组:(类比OC中NSArray)

#include<vector>

vector<int> a(5);

vector<int> b(100, 1);//b长度为100,默认值为1

for(int i = 0; i < a.size(); i++) {

cout<<a[i]<<endl;

}

a.size();

 

常量数组用大括号,如 vector<int> a = {1, 2, 3, 4, 5};

 

多个数组拼接:

例:

Vector<int> AB = {1};

Vector <int> A = {2, 3};

Vector <int> B = {4, 5};

AB.insert( AB.end(), A.begin(), A.end() );
AB.insert( AB.end(), B.begin(), B.end() );

 

字典:(类比OC中NSDictionary)

#include<map>

map<char, int> a;

a['m'] = 1;

 

a.find('x') == a.end();

 

map<int, bool> visited;

 

迭代器

map<char, int> b;

map<char, int>::iterator ite;

for(ite=b.begin(); ite != b.end(); ite++) {

cout<<ite.first<<endl;

cout<<ite.second<<endl;

}

 

集合

#include<set>

set<char> a;

 

a.insert('x')

a.erase('x');

 

if(a.find('x') != a.end()){

...

}

 

 

栈:

#include<stack>

 

stack<int> a;

a.push(1);

a.pop();

a.top();//栈顶元素

a.empty();

 

队列

#include<queue>

queue<int> a;

a.push(1);

a.pop();

a.peek();//队列头元素

posted on 2018-07-10 23:17  ximenchuixie  阅读(199)  评论(0编辑  收藏  举报