C ++ 17是2017年批准的C ++标准的名称。它基于以前的C ++ 14标准,改进了核心语言和标准库,并添加了一些新的语言功能。
请考虑以下 C++17 代码: #包括 #包括 结构S { S(int) { std::cout << "S() "; } S(const S &) { std::cout <&l...
我正在阅读一些有关 C++17 的材料,我有一个关于聚合之间继承的问题。 如果一个聚合继承了另一个聚合,这不是一个问题吗?不会有被切片的风险吗...
我正在阅读一些有关 C++17 的材料,我有一个关于聚合之间继承的问题。 如果一个聚合继承了另一个聚合,这不是一个问题吗?不会有被切片的风险吗...
如何将捕获的参数用于构造函数,并随后在另一个构造函数中使用这些参数?
考虑一个 Base 类,它有许多构造函数,每个构造函数都有不同的类型。唯一共同的就是每个构造函数的倒数第二个参数。我在我们途中复制了这个参数...
有没有一种简单的方法可以使 std::chrono::duration 的单位可配置?
我试图通过修改 boost::property_tree 解析的 xml 配置文件来设置报告 std::chrono::duration 的单位。我当前的非编译解决方案尝试这样做
以下这段代码在使用 g++ -std=c++17 的 gcc 8.5 至 10.5 时失败(https://godbolt.org/z/od99f93Tx): 结构体 T { char arr[2]; }; int main() { T数据; 数据= {“V”}; ...
Cpp 中模板队列 ADT 的 STL Emplace( ) 方法的实现
我通过模板类在 C++ 中实现了 STL 队列数据结构。我面临的问题是该模板 ADT 的 emplace() 方法的实现。在 emplace 我们使用receiv...
下面 int main 中有六行正在创建和初始化变量;在这些场景中的哪些(如果有)中,会为作业创建副本? 另外,在
如果 R 既不可构造、不可复制、不可移动,我可以有一个 std::Optional<R> 吗?
[可选](参考当前草案)中提到的 std::Optional 类模板的类型参数的唯一要求是类型 T 是可破坏的。 假设我有一个非常严格的限制
我有一个通用模板类,我不想(无法)更改它 模板 类打印机{ 民众: bool Write(std::ostream& ostr, const TData& data) const {...
一些 SO 帖子告诉我们,隐式生命周期对象创建已在 C++20 中引入,事实上,我在旧版 C++ 的草稿中找不到提及它。 然而 cppreference 并不表明...
如何将 lambda 函数转发到底层 std::thread 构造函数以便在单独的线程中执行它?
给定一个路径,文件观察器会定期检查其可用性(如果创建/删除)或时间戳(如果文件存在并且其内容已被修改)。下面的代码(取f...
std::pmr::polymorphic_allocator 的用途是什么?
我正在 C++ 参考中查看这个示例: std::array 缓冲区; // 足以容纳所有节点 std::pmr::monotonic_buffer_resource mbr{buffer.data(), buffer.size(...
我可以从结构化绑定 const 中创建一个变量,而另一个变量为非常量吗?
我希望能够将结构化绑定(例如 std::pair)分解为非常量变量和常量变量: 例如。 std::pair anExamplePair = std::make_pa...
我尝试使用 C++ 构建器运行此代码时遇到错误。 该代码应该将给定的数字转换为相应的数字系统,但是,我不断收到错误:范围检查错误...
允许 C++20 #包括 使用命名空间 std; // 简单情况下,CTAD 有效 模板 结构体A { A(const T&, int i =0) { cout << "i=" << i <...
我不能也不会用细节来烦你,但我的系统有这些特定要求: 必须在运行时调用并注册操作。 每个 Action 可以有多个目标,并且这些目标
我经常遇到这样的情况:我们创建一个作用于某些枚举的类,但后来我们派生并希望在不更改基类的情况下向枚举添加更多值。 我...
通过 using-directive 或 using-declaration 引入的名称可以用作友元声明的详细类型说明符吗?
为什么gcc、clang和msvc能成功编译以下代码? (神箭) 命名空间实现 { A 级; } // 命名空间实现 命名空间 API { 使用命名空间实现; } // 命名空间 API B级 { ...