std 相关问题

C ++标准库及其命名空间。与[c ++]结合使用。

std::weak_ptr 什么时候为空?过期的 std::weak_ptr 是否为空?

根据 [util.smartptr.weak.obs]/4,weak_ptr::owner_before 严格的弱排序是这样的:“两个shared_ptr或weak_ptr实例是等价的,当且仅当它们共享所有权......

回答 1 投票 0

为什么 Clang 中删除了 to_chars 和 from_chars 函数

我尝试编译我的代码,但 charconv 头文件中的以下函数(即使它没有 .h 扩展名)无法编译,因为它们已在我使用的 Clang 版本中被删除: ...

回答 1 投票 0

LLDB:在 std::shared_ptr<T> 析构函数上设置断点

如何在 lldb 中的析构函数 ~shared_ptr 上设置符号断点? 上下文:我们想打破这一点,检查演示程序中简单实现的前向链表的堆栈溢出...

回答 1 投票 0

C++11/17 中 std::atomic 的间接和直接初始化。有什么区别?

在 CPP Con 2017 网络研讨会上,Fedor Pikus 说:“它必须是直接初始化” 这是网络研讨会的链接。 这些初始化方法有什么区别? (和

回答 1 投票 0

如何使用 std::accumulate 对元素的类成员求和?

我总是尽可能地尝试合并 STL 算法,而不是编写手动循环。但是,我很难理解 std::accumulate 通常是如何有用的。每当我需要的时候

回答 2 投票 0

为什么std::forward_list没有size()成员函数?

我一直使用C++11的forward_list作为快速插入的容器,没有太多内存开销,因为它是一个单链表。 在意识到forward_list没有size()之后...

回答 3 投票 0

是否必须有一个函数模板来传递 std::vector 作为参数?

是否必须有一个函数模板来将 std::vector 作为参数传递,如下面的代码所示? 另外,在参数中,为什么我们需要将 与 std::vector 一起传递? 模板 是否必须有一个函数模板来将 std::vector 作为参数传递,如下面的代码所示? 还有,在参数中,为什么我们需要和<T>一起传递std::vector? template <typename T> void print_vec(const std::vector<T>& vec){ for(size_t i{}; i < vec.size();++i){ std::cout << vec[i] << " "; } std::cout << std::endl; } int main(){ //Constructing vectors std::vector<std::string> vec_str {"The","sky","is","blue","my","friend"}; std::cout << "vec1[1] : " << vec_str[1] << std::endl; print_vec(vec_str); } 不,这不是强制性的。作者认为模板 print_vec 比特定于 print_vec 的 std::vector<std::string> 更有用。 注意在 C++20 中您可以使用此语法, 它基本上将您的模板限制为任何“可迭代”的内容 它还表明,在范围(向量)的情况下,你确实应该 使用基于范围的 for 循环。 (遗憾的是,大多数 C++ 课程都有些过时了,并且没有向您展示这一点) #include <vector> #include <ranges> #include <iostream> // Use C++20 template/concept syntax auto print_all(std::ranges::input_range auto&& values) { for(const auto& value : values) { std::cout << value << "\n"; } } int main() { std::vector<std::string> values{"1","2","3"}; print_all(values); }

回答 2 投票 0

写入后在不同线程中读取 stl 容器

假设我们有一个全局的std::容器。我希望向其中写入一些内容,然后让许多线程从中读取内容。初次写入后我不会更改它。 有什么东西可以阻止...

回答 1 投票 0

C++ 字符串可以转换为固定大小的字符数组吗?

嗨我有以下代码: 字符消息[10000]; 字符串 mystr = "你好"; 我想把 mystr 放入 msg 中。有没有办法做到这一点?我尝试了各种方法,但不断得到: 不兼容的类型...

回答 8 投票 0

std::sort 使用自己的迭代器时崩溃

尝试编写一个算法来对矩阵的对角线进行排序。我想纠正一个可以访问对角线的迭代器,然后利用 std::sort 来执行排序,问题是,在某些测试中

回答 1 投票 0

在C++标准中为什么定义了getenv而不定义setenv?

似乎无法在标准中找到 setenv 或类似内容的定义。 而 getenv 似乎存在并且可以在 Windows 和 posix 标准库中移植。 简而言之就是

回答 1 投票 0

使用 std::vector::insert 将字符串插入 uint8_t 向量中,将随机数据放入其中

我正在将数据序列化为 uint8_t 向量,以将其发送到另一个模块,我有一个从函数 getVal() 返回的字符串,当我执行 vector.insert() 时,它会显示随机 vals 更多 int。 ..

回答 1 投票 0

std::(unordered_)map 和 std::(unordered_)set 共享代码吗?

假设我关心二进制大小,我已经使用std::map,并且我需要一组。我可以使用 std::map,而不是使用 std::set。这有帮助吗,或者已经是通用代码了......

回答 2 投票 0

我可以制作一个 std::set 类型的 constexpr 对象吗?

我需要一个 std::set 类型的 const 对象,它将在许多其他 cpp 文件中使用。 由于每个翻译单元的初始化顺序未定义,因此我在初始化时可能会得到一个空集...

回答 2 投票 0

过滤容器的现代方法是什么?

我想知道现代的 - 阅读:C++11 - 过滤数组的方法是什么,即我们如何实现类似于此 C# Linq 查询的东西: var FilteredElements = elements.Where(elm => ...

回答 6 投票 0

srcncpy 和 copy_n 的问题控制字符越界和 std::sort_with_std::find_if

编程能力测试(PAT)A1025 由浙江大学计算机科学与技术学院主办。每个测试应该在多个地方同时运行,并且

回答 1 投票 0

使用迭代器从“查找”或“删除”中删除

我想知道在 C++ 中从向量中删除元素的最佳实践是什么。 我见过很多次人们使用 std::remove 来查找并删除元素,然后使用 Erase 来删除...

回答 2 投票 0

有什么方法可以根据条件反向或向前迭代向量吗?

我正在尝试执行以下操作: const bool b_condition = false; 常量自动开始= b_条件? arr.cbegin() : arr.crbegin(); //可能与arr.size()不同。此处简化为例

回答 1 投票 0

C++11 std::thread 与 Posix 线程

为什么我在实践中应该选择其中一种? 除了 std::thread 是一个类之外,还有哪些技术差异?

回答 5 投票 0

C++11 及以上版本中 std::thread 相对于 pthread 的优势[重复]

我见过在C++11(或更高版本)中使用pthread编写多线程程序的代码以及其他使用std::thread库的代码。使用std::thread库安装有什么好处...

回答 1 投票 0

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