c++-concepts

c++-concepts

文章 0 浏览 7

定义一个函数签名,其中包含具有C++ 20个概念的参考

我正在尝试使用C ++ 20概念来限制接口。在此界面中,我希望功能签名仅使用引用。由于某种原因,我不能这样做。有人会帮忙吗? #include template conc…

琉璃繁缕 2025-01-22 23:26:51 3 0

std :: iS_ASSIGN和抽象类

假设您有一个抽象类: struct Abstr { virtual void f() = 0; }; static_assert(std::is_assignable::value); 上面的断言失败了GCC(在版本10.3和11.2…

指尖上的星空 2025-01-22 20:02:13 3 0

C++概念:检查是否从模板类别中派生使用未知模板参数

是否有一种方法可以使用C ++概念要求类源自模板类别的类,其模板参数再次是从另一个模板类派生的类。 示例: template class A{}; template class B{}…

耶耶耶 2025-01-22 18:21:50 2 0

C++ 14中的模拟模板约束

我在C ++中编码14一个使用模板类和功能的程序。当模板类型无法满足我对STD :: ENABLE的要求时,我不喜欢我收到的编译器错误消息, 如果我想知道我是否…

风月客 2025-01-21 12:41:05 3 0

标准库中是否有一个概念测试可用性范围的循环

有多种不同的方式,可以使类型/类可在范围内用于循环。例如,在 range-expression 进行评估以确定序列或范围的迭代。 序列的每个元素反过 范围内范围…

似最初 2025-01-21 07:46:13 2 0

如何使用概念专门化类型特征?

我正在尝试使用C ++概念来编写一种类型特征,该类型特征会根据其模板参数是否为基本类型而产生不同类型的类型: template concept fundamental = std:…

西瑶 2025-01-19 22:24:35 3 0

传递概念约束的函数重载

以下代码无法编译(Godbolt 链接): #include template decltype(auto) g(Fn&& fn) { return fn(); } template requires(std::integral) int f() { r…

国粹 2025-01-19 04:41:35 4 0

C++20 将抽象类(接口)和 mixins 转换为概念的最佳方法

我曾经通过抽象类来定义模板要求,例如 #include #include /// Generic interface template struct Interface { virtual A callback_A(const std::vec…

小梨窩很甜 2025-01-18 00:16:02 3 0

如何写出更具可读性的c++20概念?

我正在编写一个模板类,它将用户提供的类包装在一个精心设计的包装器中。我正在寻找一种更好的方法来使用 C++20 概念强制执行目标类型的接口要求。 (…

吃颗糖壮壮胆 2025-01-17 04:47:59 1 0

要求模板变量为空的语法是什么?

有没有办法编写 requiresrequire 表达式来理解模板参数是否为空? 我相信将 std::is_void_v 的值作为模板的参数是合法的。但是,我无法制定语法来检查…

软的没边 2025-01-16 10:58:09 2 0

如何在 const 表达式中获取类的实例(decltype、模板...)

如何获取类的实例? 每个人都会回答: 像这样 调用它的构造函数 class_name() 那么如果类没有默认构造函数怎么办? 我有一个接受字节缓冲区作为参数的…

⊕婉儿 2025-01-15 22:26:39 2 0

这个不完整的类型可以改进以与这个 C++ 一起使用吗?概念?

以下代码工作按照 g++ 9.3.1 和旧概念 TS 设计。但我还没有让它与 g++ 10.3.1 和概念的 C++ 核心语言版本一起使用: #if __cpp_concepts < 201707 # d…

阳光的暖冬 2025-01-14 18:02:47 3 0

为什么 `std::input_iterator` 需要 `value_type`?

我正在尝试为动态大小的数组创建一个数据结构。可以有多种选择,最简单的一种是 std::vector>。然而它通常效率不高,我们希望将所有内部向量的数据压…

自此以后,行同陌路 2025-01-14 12:50:06 4 0

c++20 迭代器概念应用

C++20 引入了迭代器的概念。然而,我不知何故无法弄清楚如何将它们应用到函数模板上。 请考虑以下方法: #include template concept Derived = std::i…

情深如许 2025-01-14 04:27:15 1 0

使用 require 子句仅有条件地存在成员变量

我希望使 dat 中 member 的存在依赖于 B (或其他一些概念)。 template struct dat { void member_func() requires (B) {} //ok std::byte member re…

生寂 2025-01-13 22:07:37 3 0
更多

推荐作者

梦断已成空

文章 0 评论 0

瞎闹

文章 0 评论 0

寄意

文章 0 评论 0

似梦非梦

文章 0 评论 0

更多

友情链接

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文