std::pair 是 C++ 标准库中的一种数据结构,用于存储一对具有相同类型的数据元素。它主要被用在函数式编程和泛型编程中,在许多情况下可以作为其他数据结构的组成部分,如向量、键值对的集合等。
std::pair 的基本结构如下:
std::pair<typename Key, typename T>
其中,Key 和 T 分别表示 pair 中的第一个和第二个元素。使用标准库中的默认命名规则,Key 通常是大写字母组成的驼峰式命名,T 通常是下划线和点组成的小写命名。
std::pair 的一些基本操作包括:
auto name = "Alice";
auto pos = std::find({3, 2}, {7, 3}, name);
if (pos != std::begin({3, 2})) {
// name 在 [3, 2] 之后的 position 中
auto pair = std::make_pair(2, 'B');
// 更新 pair.first 为 8,同时将 value 更新为 'A'
auto first_name = "Alice";
auto last_name = "Bob";
auto person = std::make_pair(first_name, last_name);
std::unordered_map<std::string, std::shared_ptr<Person>> people;
领取专属 10元无门槛券
手把手带您无忧上云