c++ 17 中,支持for循环的4种用法 谢谢

    #include <iostream>
    #include <algorithm>
    #include <vector>

    using namespace std;

    int main() {
        int nArray[] = {0, 1, 2, 3, 4, 5};
        std::vector<int> vecNum(nArray, nArray + 6);
        CString strText;

        // 第一种用法:最原始的语法(用下标)
        for (size_t i = 0; i < vecNum.size(); ++i) {
            strText.Format("%d", nArray[i]);
            AfxMessageBox(strText);
        }

        // 第二种用法:最原始的语法(用迭代器)
        for (auto it = vecNum.begin(); it != vecNum.end(); ++it) {
            strText.Format("%d", *it);
            AfxMessageBox(strText);
        }

        // 第三种用法:STL函数
        for_each(vecNum.begin(), vecNum.end(), [](int item) {
            CString strText;
            strText.Format("%d", item);
            AfxMessageBox(strText);
        }

        // 第四种用法:range-based for loop
        for (auto item : vecNum) {
            strText.Format("%d", item);
            AfxMessageBox(strText);
        }

        return 0;
    }

谢谢

如果大家觉得这篇博客有帮助,请关注我的GitHub或者收藏本网站,谢谢。


This blog is under a
CC BY-NC-SA 3.0 Unported License


本文链接:http://Great-Li-Xin.github.io/2017/06/23/THU-DS-2/