常用 STL 操作

常用 STL 操作

可参考 cpp_container , 非常详细

====================

顺序容器 Sequence containers

  • array
  • vector
  • deque
  • forward_list
  • list

关联容器 Associative containers

  • set
  • map
  • multiset
  • multimap

无序关联容器 Unordered associative containers

  • unordered_set
  • unordered_map
  • unordered_multiset
  • unordered_multimap

容器适配器 Container adaptors

  • stack
  • queue
  • priority_queue

 1. array

复制代码
#include<array>
#include<iostream>
#include<string>
#include<string_view>
#include<algorithm>
using namespace std;    


int main() {

    // 初始化,以及取元素操作
    std::array<int, 5> a = {1, 2, 3, 4, 5}; // template<class T, size_t N> struct array;
    cout << a.at(1) << endl;
    cout << a[2] << endl;
    cout << a.front() << endl;
    cout << a.back() << endl;
    cout << a.data()[1] << endl;

    cout << "===========" << endl;

    // 迭代器
    for (auto& element: a) {
        cout << element << "\t";
    }
    cout << endl;
    for (std::array<int, 5>::iterator ite = a.begin(); ite != a.end(); ite++){
        cout << *ite << "\n";
    }

    auto print = [](const int i) {std::cout << i << ' ';}; // lambda 表达式
    std::for_each(a.cbegin(), a.cend(), print); // for_each 算法

    cout << "\n===========" << endl;

    // 容量检查
    cout << a.empty() << endl;
    cout << a.size() << endl;
    cout << a.max_size() << endl;

    return 0;

}
复制代码

 

posted @   算是一个初学者  阅读(51)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示