C++标准库

来源:互联网 发布:js三大家族 编辑:程序博客网 时间:2024/06/14 23:42

1、标准库:string

#include <string>int _tmain(int argc, _TCHAR* argv[]){std::string s1 = "1111111111";std::string s2("1111111111");std::string s3(9,'1');std::string s4(s1);s3 += "2222222";if(s4 == s3) {std::cout << 111;}return 0;}

2、标准库:cctype

#include <cctype>int _tmain(int argc, _TCHAR* argv[]){ if(std::isalnum('1')) { std::cout << "is isalnum" << endl ; } if(std::isalnum('a')) { std::cout << "is isalnum" << endl ; } if(std::isdigit('1')) { std::cout << "is isdigit" << endl ; } if(std::isdigit('a')) { std::cout << "is isdigit" << endl ; }return 0;}


3、标准库vector

#include <vector>int _tmain(int argc, _TCHAR* argv[]){std::vector<int> vt;int a = 12;vt.push_back(a);a = 13;std::cout << *vt.begin(); //自解引用首个元素,输出:12return 0;}
1)说明:迭代器的 ==,!= 指的是是否指向同一个元素,
vt.begin() == vt.end //如果为真,那么它们都指向了一个不存在的元素,说明向量为空。

2)const iterator 与 const_iterator 的区别

std::vector<int> vt;vt.push_back(13);const vector<int>::iterator cit1 = vt.begin();cit1++; //error,不可修改迭代器本身*cit1 = 12; //ok,可以修改迭代器指向的对象vector<int>::const_iterator cit1 = vector.end();*cit1 = 12; //error,不可以修改迭代器指向的对象cit1++;    // ok, 可以修改迭代器本身
3)任何改变vector长度的操作,都会导致迭代器失效。如果插入某个元素或擦除某个元素等。

4、标准库 bitset

#include <bitset>int _tmain(int argc, _TCHAR* argv[]){bitset<12> bitvec1;bitset<4> bitvec2(0xFF);string strval("1100");bitset<8> bitvec3(strval);std::cout << bitvec3[0] <<bitvec3[1] << bitvec3[2] << bitvec3[3] <<bitvec3[4] <<bitvec3[5] << endl; //输出:001100std::cout << bitvec3 << endl;bitset<4> bitvec4(strval,1,3);std::cout << bitvec4[0] <<bitvec4[1] << bitvec4[2] << bitvec4[3] << endl; //输出:001100return 0;}



0 0
原创粉丝点击