1.auto基本用法:
(1)auto的原理就是根据后面的值,来自己推测前面的类型是什么;
(2)auto的作用就是为了简化变量初始化,如果这个变量有一个很长很长的初始化类型,就可以用auto代替;
注意点:
a、用auto声明的变量必须初始化(auto是根据后面的值来推测这个变量的类型,如果后面没有值,自然会报错);
b、函数和模板参数不能被声明为auto;
c、因为auto是一个占位符,并不是一个他自己的类型,因此不能用于类型转换或其他一些操作,如sizeof和typeid;
d、定义在一个auto序列的变量必须始终推导成同一类型。
std::vector<string> vec;
//我们可以用atuo来代替初始化类型:
vector<string>::iterator it = vec.

本文探讨了STL中`auto`和迭代器`iterator`的区别。`auto`主要用来简化变量初始化,它根据初始值推断类型,但不能用于类型转换或sizeof等操作。迭代器则类似于指针,可以解引用和删除元素,需要注意迭代器的失效问题。在使用map时,`auto`虽然能遍历,但它得到的是键值对类型,仅支持正向遍历,而`iterator`则支持正反向遍历。
最低0.47元/天 解锁文章
230

被折叠的 条评论
为什么被折叠?



