C++中的foreach用法

在c++中,一般人只知道foreach分开写为“for each”时的用法,却不知道“foreach”的用法。不多说,直接上代码。

    QStringList listTemp;
    listTemp.append("aaa");
    listTemp.append("bbb");
    listTemp.append("ccc");

    QString strTemp1;
    QString strTemp2;

    foreach(strTemp1,listTemp)
    {
       strTemp2= strTemp1;
    }

以上代码中,listTemp会把自己的每个项,依次赋值给strTemp1。本例中,strTemp共有三项,foreach会循环三次,strTemp1在这三次循环中,依次被赋值“aaa”,“bbb”,“ccc”。
总结:foreach用来遍历list,可以在遍历中基于 list 的相应项做相应操作。

  • 26
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
C++,没有直接的foreach循环,但可以通过不同的方法来实现类似的功能。其一种方法是使用C++11引入的auto类型推导和std::for_each函数。可以使用以下代码示例来展示这种用法: #include <algorithm> #include <iostream> #include <vector> void func(int n) { std::cout << n << std::endl; } int main() { std::vector<int> arr; arr.push_back(1); arr.push_back(2); std::for_each(arr.begin(), arr.end(), func); return 0; } 这段代码使用了std::for_each函数来对数组的每个元素执行func函数。func函数是一个自定义的函数,用于在控制台输出元素的值。通过这种方式,我们实现了类似foreach循环的功能。 此外,在C++还有其他实现foreach循环的方法。其一种方法是使用宏定义。通过使用宏定义,我们可以定义一个名为foreach的宏,然后使用它来遍历容器的元素。以下是使用宏定义实现foreach循环的示例代码: #define foreach(container, it) \ for (typeof((container).begin()) it = (container).begin(); it != (container).end(); it++) // 输出 foreach(arr, it) { std::cout << *it << std::endl; } 这段代码定义了一个名为foreach的宏,可以在遍历容器的过程输出元素的值。 总结起来,C++没有直接的foreach循环,但我们可以通过使用C++11的类型推导和std::for_each函数,或者使用宏定义来实现类似的功能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [c++的那些foreach循环](https://blog.csdn.net/xiong_min/article/details/87859214)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值