std 相关问题

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

为什么 C++ 迭代器需要返回引用?

我正在实现一个迭代器,它迭代生成器函数的结果,而不是迭代内存中的数据结构,例如向量或映射。 通读最终工作草案...

回答 2 投票 0

如何将 `const std::vector<T*>` 转换为 `std::span<const T*>`

标题。 我正在实现这个类: #包括 #包括 类我的类{ 民众: std::span 数字(无效){ 返回 m_numbers; } std::span...

回答 1 投票 0

C++ hash_map find() 与 contains() 性能

如果我想检查某个元素是否包含在映射中并随后直接使用它,那么性能方面更好的选项是什么? std::unordered_map my_map; int my_key; 光学...

回答 1 投票 0

使用 cl.exe 包含标准库(在普通命令提示符中)?

我正在尝试使用标准 Windows 命令提示符命令编译一个简单的共享库 DLL 文件。 DLL 文件将从以下名为 test.cpp 的 C++ 文件编译而来: #包括<

回答 1 投票 0

处理右值时插入与放置

std::string myString; std::unordered_set mySet; mySet.insert(std::move(myString)); mySet.emplace(std::move(myString)); // 这是一个例子,实际上你不能移动两次 我

回答 1 投票 0

如何使用标准 C++ 将 UTF-8 转换为 ANSI

我从数据库中读取了一些字符串,以 char* 和 UTF-8 格式存储(你知道,“á”被编码为 0xC3 0xA1)。但是,为了将它们写入文件,我首先需要将它们转换为 ANS...

回答 5 投票 0

如何使用boost最小化C++函数?

所以我有一个像 int f(int i, int j, int c, double d) { /*...任何 i、j、c、d 操作都会影响我们拥有的某些返回 int*/ } 升压或性病中是否有任何东西会夺走我的

回答 3 投票 0

std::filesystem::is_regular_file(path) 在 Windows 上意味着什么?

关于 std::filesystem::is_regular_file(path),cppreference.com 说: 检查给定的文件状态或路径是否对应于常规文件[...] 相当于 s.type() == file_type::regular。 对于前...

回答 1 投票 0

如何在极坐标中的rolling_std中设置ddof=0?

我有一个以 Pandas 和 Polars 表示的数据集,我需要使用 Polars 计算 ddof=0 的滚动标准差。这是一个示例数据集和实现此目的的 Pandas 代码...

回答 1 投票 0

为什么 std::basic_string::operator[] 同时是 const/非常量成员函数?

http://cplusplus.com/reference/string/basic_string/operator[] 我知道拥有第二个返回 const 的版本是有利的,以防止在需要 const 结果时出现警告...

回答 5 投票 0

为什么可以用 std::is_const 和 std::is_reference 来实现 std::is_function ?

以下是 std::is_function 的实现吗? 模板 结构 is_function : std::integral_constant< bool, !std::is_const::value && !...

回答 2 投票 0

是否可以交换两个 std::tie 调用的结果

我已经尝试了一段时间寻找一种符合标准的方法来编译这样的东西: 整数a=1; 整数 b = 2; 整数 c = 3; 整数d=4; std::swap(std::tie(a, b), std::tie(c, d)); (...

回答 1 投票 0

如何使用例如 C 语言风格的并行矩阵向量乘法实现现代化`std::transform`?

我正在尝试使用更现代的方法来调整我的编程实践,这些方法利用了 STL 容器、算法、执行策略等。 我开发了一个小测试来尝试现代化......

回答 1 投票 0

使用自定义比较器实例化 int 对的priority_queue 时在 C++ 中键入错误(以实现最小堆)

目前正在解决一个leetcode问题,我需要一个最小的堆对。 我正在尝试使用带有 int 对和自定义比较类型的priority_queue。 尝试实施相同的措施

回答 2 投票 0

如何修复“Any”类代码以正确输出数据?

我正在尝试模拟std::any,我的想法是使用基类指针指向不同类型的模板派生类,来实现存储不同类型数据的功能,比如...

回答 1 投票 0

`std::vector<T>::clear` *真的*没有指定时间复杂度吗?

在这个问题的处理过程中,我们发现 C++ 标准似乎没有对 std::vector::clear 提出时间复杂度要求。 23.2.3 ... 下的表 100

回答 1 投票 0

迭代 std::set/std::map 的时间复杂度是多少?

迭代 std::set/std::multiset/std::map/std::multimap 的时间复杂度是多少?我相信它与集合/地图的大小是线性的,但不太确定。是否在lang中指定...

回答 2 投票 0

std::distance 在给定 std::find 返回的迭代器时提供超过结束索引

这是我目前正在处理的一段豁免代码。 std::find 似乎按预期完成了工作,但是 std::distance 总是返回 3,我尝试了各种配置,或者有问题

回答 1 投票 0

为什么 std::vector 在调整大小时不使用 memcpy 或 realloc

我了解到 std::vector 在调整大小期间会显式调用每个元素的复制构造函数,如果我理解正确的话,这意味着它在幕后不使用 memcpy 或 realloc,这......

回答 1 投票 0

如何让 gmock 对象返回固定的 std::forward_list

我正在尝试编写这个测试: 测试(AccountServiceShould,print_a_statement_containing_all_transactions){ 自动 transactionRepository = 新 TransactionRepositoryMock; std::forward_list 我正在尝试编写这个测试: TEST(AccountServiceShould, print_a_statement_containing_all_transactions) { auto transactionRepository = new TransactionRepositoryMock; std::forward_list<model::Transaction *> transactionList; auto statementPrinter = new StatementPrinterMock; transactionList.assign({transaction("22/12/2019", 1000)}); ON_CALL( *transactionRepository, all() ) .WillByDefault(Return(transactionList)); Clock *myClock = new Clock; auto accountService = new AccountService(transactionRepository, myClock); EXPECT_CALL(*statementPrinter, print(Eq(transactionList))); accountService->printStatement(); delete accountService; delete transactionRepository; delete myClock; delete statementPrinter; } 我在编译时遇到错误: No viable conversion from 'internal::ReturnAction<forward_list<Transaction *, allocator<Transaction *>>>' to 'const Action<std::forward_list<model::Transaction, std::allocator<model::Transaction>> ()>' candidate template ignored: requirement 'internal::disjunction<std::is_constructible<std::function<std::forward_list<model::Transaction, std::allocator<model::Transaction>> ()>, testing::internal::ReturnAction<std::forward_list<model::T... candidate template ignored: could not match 'Action' against 'ReturnAction' explicit constructor is not a candidate candidate template ignored: could not match 'OnceAction' against 'Action' candidate template ignored: requirement 'conjunction<testing::internal::negation<std::is_same<void, std::forward_list<model::Transaction, std::allocator<model::Transaction>>>>, testing::internal::negation<std::is_reference<std::forward_... passing argument to parameter 'action' here 我不明白问题出在哪里。我尝试更改 transactionList 的类型,使用动态对象,甚至创建了自己的 MATCHER_P,但我无法弄清楚这个。 我不是 C++ 专家,恰恰相反。 谢谢! 应该是评论,但是字符太多了。 没有可行的转换 forward_list<Transaction *, allocator<Transaction *>> 到 std::forward_list<model::Transaction, std::allocator<model::Transaction>> 所以,我90%(因为ofc你没有在问题中包含相关信息)确定你有一个拼写错误,因为你的模拟返回std::forward_list<Transaction>并且你尝试返回std::forward_list<Transation*>。 编译没有问题: struct Transaction {}; class TransactionRepositoryMock { public: MOCK_METHOD(std::forward_list<Transaction*>, all, ()); }; TEST(AccountServiceShould, print_a_statement_containing_all_transactions) { auto transactionRepository = new TransactionRepositoryMock; std::forward_list<Transaction*> transactionList; transactionList.assign({new Transaction}); ON_CALL(*transactionRepository, all()).WillByDefault(Return(transactionList)); }

回答 1 投票 0

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