C++ 11的新用法之for循环

C++ 11的新用法之for循环

C++11推出了很多提升效率的关键字和用法,这让人写C++写出了Python的感觉,话不多少,今儿就来记录一下C++11中的for循环用法。

只访问不修改

我个人在写C++代码的时候经常用到STL中的容器,但是入容器容易,出容器巨麻烦,必须依赖迭代器进行循环访问,个人就觉得麻烦,但是自从有了C++11,让这一切变得简单起来。直接上代码感受。

  • 之前
    
    for (list<Group>::iterator it = m_g_A2llist.begin(); it != m_g_A2llist.end(); it++)
    {
    	for (map<string, Signal>::iterator itor = it->sigmap.begin(); itor != it->sigmap.end(); itor++)
    	{
    		cout << *(itor->first.signame);
    	}
    }
    
  • 现在
    for (auto each : g_A2llist)
    {
    	for (auto each1:each.sigmap)
    	{
    		cout << each1.first.signame;
    	}
    }
    
访问并修改
  • 如果需要访问并修改对each加个&就好。
    for (auto &each : g_A2llist)
    {
    	for (int i = 0; i < m_Sig_list.GetItemCount(); i++)
    	{
    		each.sigmap[signame].cycle_time = MEASURE_CYCLE_TIME_20MS;
    	}
    }
    

简直不能太好用,都get起来吧,以后就不用迭代器了。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_长风_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值