遍历string时 使用for(char& c : s) for(char c : s)

auto 是C++11中增加的一个非常有用的关键字,其核心在于类型推导(type deduction),也就是让编译器根据等号右边的表达式来决定auto实际代表的类型。注意它区别于其他语言的“动态”类型(如objective c的id和C#的dynamic),C++的auto只涉及到编译期的行为而不是运行期。

静态类型是指在运行之前就检查数据类型的语言,比如C/C++在编译的时候,就检查了数据类型。

动态类型是指,在运行的时候(runtime)才检查数据类型,比如php、javascript。

for (char& c : s)

使用了引用类型,直接引用原字符串进行遍历操作,不需要赋值,但是对c进行赋值时也会改变原来的值

for (char c : s)

复制一个s字符串再进行遍历操作,时间增大但是不会改变字符串s的值

猜你喜欢

转载自blog.csdn.net/weixin_41169280/article/details/111365962