c++11的新特性
一.auto
1.auto声明
atuo x = 1.8 //根据赋值,自动识别x的数据类型,且只能在初始化时使用
2.迭代器遍历中的auto
for(auto p = a.begin(); p != a.end() ; p++)
二.for循环遍历容器
1.vector,set,map,unordered_set,unordered_map可以用for进行遍历, stack, queue不可以用for进行遍历
2.for循环遍历容器的新写法,以及传值与传址的区别
int a[3] = {1,0,0};
for(int i:a) cout << i << ” “; //1 0 0
//也可写成for(auto i : a) cout << i << ” “;
for(int i:a) i++; //传值
for(int i:a) cout << i << " "; //1 0 0
for(int &i:a) i++; //传地址
//也可写成for(auto &i:a) i++;
for(int i:a) cout << i << " "; //2 1 1
三.数字转换为string类
头文件:#include[HTML_REMOVED]
string s = to_string(12.13);
cout << s; //12.130000
string s = to_string(12);
cout << s; //12
补充:string类转换成字符串
string s = to_string(12.13);
printf(“%s”, s.c_str())
四.字符串转换为数字
头文件:#include[HTML_REMOVED]
int a = stoi(“12”);
cout << a - 1 << endl; //11
double b = stod(“12.23”);
cout << b - 1 << endl; //11.23