stl 相关问题

标准模板库(STL)是通用容器,迭代器,算法和函数对象的C ++库。当C ++被标准化时,STL的大部分被采用到标准库中,并且标准库中的这些部分有时也被错误地统称为“STL”。

C++11 unordered_set 与 std::owner_less 类似散列

我正在使用外部网络库,它返回一些代表打开的套接字的神奇结构,并且文档说,当将它们插入到 STL 容器中时,应该使用 std::

回答 3 投票 0

具有恰好 N 个参数的结构的构造函数,其中 N 是模板参数

我不想创建一个非常小的数学库,它对 constexpr 有很好的支持。 为了简化问题,我们在这里只讨论向量。 模板 结构 vec...

回答 1 投票 0

IWYU 可以被告知完全忽略标头吗?

IWYU(包含您使用的内容)通常要求您直接包含导出您正在使用的每个符号的每个标头。这对于您自己的项目标题来说很好,实际上是 sta...

回答 1 投票 0

如何实现隐藏可移动输入迭代器?

我有一个输入迭代器,可以遍历文件并解析其中的记录。每个解析的记录都存储在迭代器中并归其所有(“隐藏”)。 记录不是

回答 1 投票 0

使用迭代器遍历列表?

我需要使用 C++ 遍历列表的示例。

回答 5 投票 0

如何用sentinel编写可迭代类以在find_if中使用它?

我在 2023 年 3 月左右编写了 C++ 代码。当时编译得很好。现在,我必须对其进行一些更改,但它不再编译。使用的语言标准是C++20。我不记得了...

回答 1 投票 0

std::thread::id 跨进程是否唯一?

根据我的经验,结果似乎是 std::this_thread::get_id() 在整个进程中是唯一的:一个进程的 id 与另一个进程不同。 这是标准保证的吗?

回答 3 投票 0

初始化字符串向量数组

是否可以初始化字符串向量数组? 例如: 静态 std::vector v; //声明为类成员 我使用 static 只是为了初始化并用 s 填充它...

回答 9 投票 0

C++ STL:std::unordered set 和 std::unordered_map 哈希如何工作?

我试图了解STL无序集/映射(即哈希映射)如何工作。 我知道初始哈希表大小(即桶数)设置为 8,当更多元素添加到集合中时......

回答 1 投票 0

使用变换创建新向量

我有一个整数向量,我想将其转换为对向量(对由 bool 和 int 组成)。我当前的代码很简单,如下所示: std::向量 a; std::向量<...

回答 2 投票 0

将字符串中的字符累积为数字。拉姆达。 C++

如何使用 lambda 将字符串 num 中的所有数字求和为整数和? 字符串数字=“1234567891011”; int sum = 累加(num.begin(), num.end(), 0, [](auto & a, auto & b) ...

回答 1 投票 0

如何解决unordered_map中整数对的哈希函数错误?

我有以下带有 unordered_map 成员的类,以及为对定义的哈希函数 abc 类 { 民众: unordered_map,int>规则; 未签名

回答 2 投票 0

为什么 C++ STL iostream 不“异常友好”?

我习惯了 Delphi VCL 框架,其中 TStream 会在错误时抛出异常(例如,文件未找到、磁盘已满)。我正在移植一些代码以使用 C++ STL,但被 iostreams 发现了......

回答 4 投票 0

.nii 到 .stl 文件转换问题

有人可以帮我将.nii 格式的分段掩码转换为.stl 格式吗?我尝试对其进行转换,但发现了一些问题 i) 转换并不顺利,如图所示...

回答 1 投票 0

有没有一个函数可以修改map的值并返回迭代器?

我想要的是在map中插入一个pair(如果不存在则创建它,否则修改它),并获取值的指针,以供其他人使用。 这是一个演示代码: #包括 我想要的是在map中插入一个pair(如果不存在则创建它,否则修改它),并获取值的指针,以供其他人使用。 这是一个演示代码: #include <map> using namespace std; std::map<int, int> a = {{1, 1}}; int* set_and_return_value() { // option 1: a[1] = 2; return &(a[1]); i think it's ugly const auto [it, ok] = a.emplace(1, 2); return &(it->second); // emplace is good, but it won't modify the existed key's value } 那么,有没有一个函数,可以在真正插入pair后返回iterator? 通过迭代器赋值不会使迭代器失效,如果插入失败,您可以使用它和 emplace 的返回值进行条件赋值: #include <map> using namespace std; std::map<int, int> a = {{1, 1}}; auto set_and_return_it() { const auto [it, inserted] = a.emplace(1, 2); if (!inserted) { it->second = 2; } return it; } 如果您希望它更通用,请使用 try_emplace 以避免构造 2 两次。 template<typename K, typename T> auto set_and_return_it(K&& key, T&& value) { const auto [it, inserted] = a.try_emplace(std::forward<K>(key), std::forward<T>(value)); if (!inserted) { it->second = std::forward<T>(value); } return it; }

回答 1 投票 0

打破 std::for_each 循环

使用 std::for_each 算法时,满足特定条件时如何中断?

回答 9 投票 0

调用自定义类的map的值函数

我有一个自定义类的 STL 映射,其中键是整数,值是我的类的对象。我想使用地图调用我的类的函数。我的代码如下: #包括...

回答 1 投票 0

为什么我的代码对除一个实例之外的所有内容都有效?

我为我的c++实验室做作业,我需要从键盘获取一个数字,并在STL列表中输入数字后删除一个元素。由于某种原因,如果我将 7 个元素放入列表中,恰好是 {1,2,2,3,...

回答 1 投票 0

gtest:clang++ 和 std::vector 架构 x86_64 错误的未定义符号

我下载了gtest 1.6,并用clang++编译它。 导出 CC=/usr/bin/clang 导出 CXX=/usr/bin/clang++ 配置 制作 我得到了 libgtest.a,并将其复制到 /usr/local/lib/libgtest_c...

回答 2 投票 0

c++标准库中有红黑树或avl树的实现吗?

就像multiset是STL中的二叉搜索树实现一样,是否有可用的RB树或AVL树实现?

回答 3 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.