c++17 相关问题

C ++ 17是2017年批准的C ++标准的名称。它基于以前的C ++ 14标准,改进了核心语言和标准库,并添加了一些新的语言功能。

三元运算符中的复制省略是否是强制性的(如果允许的话)?

请考虑以下 C++17 代码: #包括 #包括 结构S { S(int) { std::cout << "S() "; } S(const S &) { std::cout <&l...

回答 2 投票 0

聚合继承聚合时,是否存在对象切片或内存泄漏的风险?

我正在阅读一些有关 C++17 的材料,我有一个关于聚合之间继承的问题。 如果一个聚合继承了另一个聚合,这不是一个问题吗?不会有被切片的风险吗...

回答 1 投票 0

聚合继承和切片

我正在阅读一些有关 C++17 的材料,我有一个关于聚合之间继承的问题。 如果一个聚合继承了另一个聚合,这不是一个问题吗?不会有被切片的风险吗...

回答 1 投票 0

如何将捕获的参数用于构造函数,并随后在另一个构造函数中使用这些参数?

考虑一个 Base 类,它有许多构造函数,每个构造函数都有不同的类型。唯一共同的就是每个构造函数的倒数第二个参数。我在我们途中复制了这个参数...

回答 1 投票 0

有没有一种简单的方法可以使 std::chrono::duration 的单位可配置?

我试图通过修改 boost::property_tree 解析的 xml 配置文件来设置报告 std::chrono::duration 的单位。我当前的非编译解决方案尝试这样做

回答 1 投票 0

为具有数组数据成员的结构分配聚合初始化时出错

以下这段代码在使用 g++ -std=c++17 的 gcc 8.5 至 10.5 时失败(https://godbolt.org/z/od99f93Tx): 结构体 T { char arr[2]; }; int main() { T数据; 数据= {“V”}; ...

回答 1 投票 0

Cpp 中模板队列 ADT 的 STL Emplace( ) 方法的实现

我通过模板类在 C++ 中实现了 STL 队列数据结构。我面临的问题是该模板 ADT 的 emplace() 方法的实现。在 emplace 我们使用receiv...

回答 1 投票 0

什么时候分配返回值会产生副本?

下面 int main 中有六行正在创建和初始化变量;在这些场景中的哪些(如果有)中,会为作业创建副本? 另外,在

回答 1 投票 0

从嵌套容器的谓词中构建谓词

我正在尝试构建一个具有可自定义比较谓词的关联容器,并且我在内部使用一个集合来存储一些数据。这应该很简单,我只需要 p...

回答 1 投票 0

如果 R 既不可构造、不可复制、不可移动,我可以有一个 std::Optional<R> 吗?

[可选](参考当前草案)中提到的 std::Optional 类模板的类型参数的唯一要求是类型 T 是可破坏的。 假设我有一个非常严格的限制

回答 1 投票 0

枚举的模板专业化

我有一个通用模板类,我不想(无法)更改它 模板 类打印机{ 民众: bool Write(std::ostream& ostr, const TData& data) const {...

回答 1 投票 0

隐式生命周期对象创建在 C++20 之前适用吗?

一些 SO 帖子告诉我们,隐式生命周期对象创建已在 C++20 中引入,事实上,我在旧版 C++ 的草稿中找不到提及它。 然而 cppreference 并不表明...

回答 1 投票 0

如何将 lambda 函数转发到底层 std::thread 构造函数以便在单独的线程中执行它?

给定一个路径,文件观察器会定期检查其可用性(如果创建/删除)或时间戳(如果文件存在并且其内容已被修改)。下面的代码(取f...

回答 1 投票 0

std::pmr::polymorphic_allocator 的用途是什么?

我正在 C++ 参考中查看这个示例: std::array 缓冲区; // 足以容纳所有节点 std::pmr::monotonic_buffer_resource mbr{buffer.data(), buffer.size(...

回答 1 投票 0

我可以从结构化绑定 const 中创建一个变量,而另一个变量为非常量吗?

我希望能够将结构化绑定(例如 std::pair)分解为非常量变量和常量变量: 例如。 std::pair anExamplePair = std::make_pa...

回答 1 投票 0

使用字符串数组和for循环进行范围检查错误

我尝试使用 C++ 构建器运行此代码时遇到错误。 该代码应该将给定的数字转换为相应的数字系统,但是,我不断收到错误:范围检查错误...

回答 1 投票 0

使用非类型模板参数时的类模板参数推导

允许 C++20 #包括 使用命名空间 std; // 简单情况下,CTAD 有效 模板 结构体A { A(const T&, int i =0) { cout << "i=" << i <...

回答 1 投票 0

如何创建嵌套可变参数函数?

我不能也不会用细节来烦你,但我的系统有这些特定要求: 必须在运行时调用并注册操作。 每个 Action 可以有多个目标,并且这些目标

回答 1 投票 0

枚举对继承的支持

我经常遇到这样的情况:我们创建一个作用于某些枚举的类,但后来我们派生并希望在不更改基类的情况下向枚举添加更多值。 我...

回答 2 投票 0

通过 using-directive 或 using-declaration 引入的名称可以用作友元声明的详细类型说明符吗?

为什么gcc、clang和msvc能成功编译以下代码? (神箭) 命名空间实现 { A 级; } // 命名空间实现 命名空间 API { 使用命名空间实现; } // 命名空间 API B级 { ...

回答 1 投票 0

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