标签[stl]

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

1
0回复
25

basic_string_view

使用basic_string_view<T>有什么缺点,其中T不是一个简单的类型,甚至不是一个 POD? 这个构造编译并似乎工作。 我正在寻找vector<T>的只读视图。 span不可用,因为我们不使用 C++20。
8
1回复
98

为什么`it1++`有效,但`it1=it1+1`无效,其中it1是列表容器的迭代器[重复]

这个问题在这里已经有了答案: 错误:“不匹配运算符+”,对于列表迭代器(4 个回答) 为什么 std::list 迭代器没有 operator+ ?
0
2回复
62

如何使用stl继承?

当参数是基本结构的列表时,如何调用具有不同参数的函数,而在调用函数时,参数是继承结构的列表。 甚至有可能吗? 我有错误 如果有人知道如何正确命名这个问题甚至重新表述它,请这样做。
0
2回复
48

C++中动态值的清晰映射

我已经看到很多网站都在讨论为包含地图的类实现 d'tor 的正确方法。 但不适用于动态分配地图本身的值的情况。 例如,让Manager是一个包含map<int, User*>类,其中User是我稍后将动态分配的某个类。 根据练习规则,它应该处理registerUser(string na
2
0回复
51

从文件中读取数据并将它们存储在向量中>>在C++中

我有一个文件说data.txt ,其中的数据如下所示; 我有一个容器作为vector<vector<pair<int,int>>>Graph(100) ,通过读取上面的数据我想执行操作作为Graph[1].push_back({80,982}) , Graph[1
3
1回复
74

C++STL:为什么分配器不会增加容器的内存占用?

下面的代码片段(参见 Godbolt )表明大分配器不会增加 STL 容器的内存占用,但大比较器会。 为什么会这样?// compiled with x86-64 gcc 10.3, -std=c++17#include <functional>#include <iostream
0
0回复
26

将迭代器转换为“lower_bound”的整数时得到错误的输出[重复]

这个问题在这里已经有了答案: cpp 中lower_bound 在未排序数组上的行为1 个回答 未排序向量上的lower_bound/upper_bound 1 个回答
0
1回复
30

在`std::upper_bound`的自定义比较器函数中获取当前元素的索引

我正在尝试使用std::upper_bound来查找std::vector<double> xpositions元素的std::vector<double> xpositions 。 xpositions中每个元素的索引需要用于索引多维数组。 我试过了upper_bound
0
1回复
91

为什么std::end()返回的值会随着容器的变化而变化,而std::begin()不会?

我有一个要插入项目的std::list ,我有一个std::unordered_map ,我想在其中存储插入到std::list的元素的迭代器(我正在实现 LRU 缓存)。 下面的代码没有给我我期望的输出: 这里的输出是5 5 5 5 5 - 我想要/期望的输出是0 1 2 3 4 。 我会猜到这段
0
1回复
23

C#如何解析STL文件。当前函数未将顶点正确链接到面。算法错误

我正在处理一个需要在 OpenGL 中显示 STL 文件的 C# 项目。 为此,我创建了一个返回自定义 Part 对象的 STL 解析类。 我有解析类,可以导入 ASCII 和二进制文件。 到目前为止,ASCII 导入似乎工作正常。 这是我从维基百科获得的 ASCII 文件的线框示例: Sphere
1
1回复
70

为什么`std::set::extract`不支持像`std::set::find`那样的异构查找?

看在线演示为什么std::set::extract不支持像std::set::find那样的异构查找?
0
0回复
26

堆优先级弹出多个性能

我正在使用 boost::heap::priority 根据时间戳重新排序对象。 对于一个正在进行的进程,总是有push和pop的(pop after object is 10ms in the heap) 我可以看到 pop 正在占用 cpu,我认为如果有一种方法可以从堆中删除多个元素,并且只有在
-4
0回复
15

使用PythonDjango查找STL文件权重[关闭]

关闭。 这个问题需要更加集中。 它目前不接受答案。 想改善这个问题吗? 更新问题,使其仅通过编辑这篇文章来
0
1回复
28

如何避免std::vector的代码的多个副本?

我有一个共享库——让我们称它为 master。 它产生一个或多个从属共享库。 从共享库通过接口与主共享库交互,交换 std::string、std::vector 等。 从属共享库的编译时间必须最小化,因为此编译是在客户站点动态完成的。 只要交换的对象不是 STL 容器,一切正常。 例如 mast
0
1回复
53

从C++中的二维数组初始化二维向量

我有这个代码: 我想初始化 B 定义如下: 我知道我可以用两个循环来做到这一点(可能还有一个循环,如此处所述: https : //stackoverflow.com/a/4092996/654019 但是有没有什么办法可以在没有任何循环的情况下做到这一点?
0
0回复
45

将部分字节有效推送到std::queue

我有一个std::queue保存消息,它可以是可变大小: 大多数时候我没有 1000 个字节,我可能有 200 或 100 个。 目前我正在推动这样的: 我假设分配 AND 复制 1,000 个字节。 有没有办法使这更有效/避免分配和复制未使用的 900 字节?
0
1回复
52

我可以将各种类型元素插入到容器中吗?

我尝试使用如下模板引发堆栈溢出:#include <iostream>using namespace std;#define endl '\n'template <class T>// void next (T a) cout << a++ << en
0
1回复
46

std::transform中的意外行为

我有一个std::vector<float> vertices ,我想对其进行转换并将结果附加到向量上; 到目前为止,我已经这样做了: 但是对于每个新插入,我似乎都得到了-1.998397116e+18的浮点值。 为什么是这样?
1
2回复
95

std::ranges::swap()和std::swap()有什么区别?

在 C++20 中,有两个swap函数模板: std::ranges::swap(T&&, U&&)和std::swap(T&, T&) 。 我只是好奇: 他们两个有什么区别?
-2
0回复
23

SPOJRPLD-我的代码应该更新什么才能被在线评审接受

我使用了一个地图并在该地图中实现了一对来计算测试用例中是否存在类似类型的数据。 如果它存在,它应该给出一个“不可能”的输出。 给定的测试用例对我的代码是正确的,但是在检查其他测试用例时它向我显示了错误的答案。 我无法理解我的代码有什么问题。 问题链接: https : //www.spoj.com/

1 2 3 4 5 6 7 8 9 10 下一页