当前位置: 首页 > 工具软件 > Gabriel > 使用案例 >

【Gabriel】C++中vector容器中元素输出(遍历)的5种方式

姬银龙
2023-12-01

大家好!我是Gabriel!我们在利用vector解算法题目时,经常需要遍历输出,对此,我有以下5种方法: 

  1. 使用基于范围的for循环,从vector容器中逐个访问元素并输出它们:
    std::vector<int> vec = { 1, 2, 3, 4, 5 };
    
    for (auto element : vec) {
        std::cout << element << " ";
    }
    

     

  2. 使用迭代器遍历整个vector容器,并输出每个元素的值
    std::vector<int> vec = { 1, 2, 3, 4, 5 };
    
    for (auto it = vec.begin(); it != vec.end(); ++it) {
        std::cout << *it << " ";
    }
    

     

  3. 使用标准库算法std::for_each()来遍历整个vector容器,并输出每个元素的值:
    std::vector<int> vec = { 1, 2, 3, 4, 5 };
    
    std::for_each(vec.begin(), vec.end(), [](int element){
        std::cout << element << " ";
    });
    

     

  4. 使用C++11引入的for循环中的初始语句声明一个计数器变量,然后使用vector容器的at()函数和计数器变量输出每个元素的值:
    std::vector<int> vec = { 1, 2, 3, 4, 5 };
    
    for (size_t i = 0; auto element = vec.at(i); ++i) {
        std::cout << element << " ";
    }
    

     

  5. 使用标准库算法std::copy()将vector容器中的所有元素复制到输出流中:
    std::vector<int> vec = { 1, 2, 3, 4, 5 };
    
    std::copy(vec.begin(), vec.end(), std::ostream_iterator<int>(std::cout, " "));
    

    注意:以上示例都假设vector容器是包含整数类型的。如果容器中存储了其他类型的元素,代码需要进行相应的更改。

如果觉得我写的还不错的话,收藏起来慢慢看吧 

 

 类似资料: