ubuntu

Ubuntu中C++如何使用STL容器

小樊
39
2025-06-05 19:43:09
栏目: 编程语言

在Ubuntu中,C++可以使用标准模板库(STL)中的各种容器。以下是一些常用的STL容器及其使用方法:

  1. 向量(vector)

向量是一个动态数组,可以在运行时调整大小。要使用向量,需要包含头文件<vector>

#include <iostream>
#include <vector>

int main() {
    std::vector<int> vec; // 创建一个整数向量

    // 添加元素
    vec.push_back(1);
    vec.push_back(2);
    vec.push_back(3);

    // 访问元素
    std::cout << "第一个元素: " << vec[0] << std::endl;

    // 遍历向量
    for (int i = 0; i < vec.size(); ++i) {
        std::cout << vec[i] << " ";
    }
    std::cout << std::endl;

    return 0;
}
  1. 列表(list)

列表是一个双向链表,可以在常数时间内插入和删除元素。要使用列表,需要包含头文件<list>

#include <iostream>
#include <list>

int main() {
    std::list<int> lst; // 创建一个整数列表

    // 添加元素
    lst.push_back(1);
    lst.push_back(2);
    lst.push_back(3);

    // 访问元素
    std::cout << "第一个元素: " << lst.front() << std::endl;

    // 遍历列表
    for (int num : lst) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}
  1. 集合(set)

集合是一个有序的容器,其中的元素是唯一的。要使用集合,需要包含头文件<set>

#include <iostream>
#include <set>

int main() {
    std::set<int> st; // 创建一个整数集合

    // 添加元素
    st.insert(1);
    st.insert(2);
    st.insert(3);

    // 遍历集合
    for (int num : st) {
        std::cout << num << " ";
    }
    std::cout << std::endl;

    return 0;
}
  1. 映射(map)

映射是一个键值对的容器,其中的键是唯一的。要使用映射,需要包含头文件<map>

#include <iostream>
#include <map>

int main() {
    std::map<std::string, int> mp; // 创建一个字符串到整数的映射

    // 添加元素
    mp["one"] = 1;
    mp["two"] = 2;
    mp["three"] = 3;

    // 访问元素
    std::cout << "one: " << mp["one"] << std::endl;

    // 遍历映射
    for (const auto& pair : mp) {
        std::cout << pair.first << ": " << pair.second << std::endl;
    }

    return 0;
}

这些只是STL容器的一部分。还有其他容器,如deque(双端队列)、stack(栈)、queue(队列)等。要使用这些容器,请查阅C++标准库文档以获取更多信息。

0
看了该问题的人还看了