142536a 发表于 2015-4-20 11:44:46

(原创)用c++11打造类似于python的range

  python中的range函数表示一个连续的有序序列,range使用起来很方便,因为在定义时就隐含了初始化过程,因为只需要给begin()和end()或者仅仅一个end(),就能表示一个连续的序列。还可以指定序列产生的步长,如range(0,10,8)产生的序列为, 默认的步长为1,range(3)表示的序列是。range的遍历也很方便:



for i in range(3):
print i
  
  c++11中增加了一项新特性range-based for循环,其实这也不是什么新东西,在c#、java和python等语言中已经有了。这种循环方式非常简洁,它的内部其实是对传统的begin()/end()方式的遍历做了包装,算是一个循环的语法糖。用法很简单:



//遍历vector
std::vector v;
for(auto i : v)
{
cout
页: [1]
查看完整版本: (原创)用c++11打造类似于python的range