c++20

c++20

文章 0 浏览 0

为什么被 C++20 `requires` 子句禁用的函数仍然会导致格式错误的类型错误?

使用 C++20 的 requires 语句,我注意到,如果该函数中的类型格式不正确,则使用 requires 有选择地禁用函数定义会中断 -即使该功能未启用。 我找到的…

狼性发作 2025-01-12 03:19:15 0 0

完全匹配的默认比较运算符函数被删除的原因是什么?

考虑这个示例, struct C { bool operator<(const C&) const = default; // #1 }; int main(){ C c1,c2; auto r = c1 < c2; } GCC 和 Clang 报告候选 …

花开半夏魅人心 2025-01-11 22:45:58 0 0

C++概念:无论返回类型是什么,检查方法/运算符是否存在

假设我正在编写一个模板函数,想要在其模板参数上调用 operator+= 并且不关心它是否返回新值(T 类型),一个 void,或者其他什么。例如: template v…

病女 2025-01-11 20:08:21 0 0

您能否为概念中的函子指定返回类型(尤其是 void 返回类型)?

我在 C++ 中使用高阶函数或修改函数的模板进行了大量工作 。函数修饰符是一种经常有用的模式。例如,我经常使用这个简单的挂钟基准: #include templa…

傲世九天 2025-01-11 19:08:49 0 0

可变参数概念约束

不幸的是,这段代码不起作用: #include #include #include #include template requires (sizeof ... (Args) == 0 || (std::is_convertible_v)) const…

小镇女孩 2025-01-11 16:17:06 0 0

为什么 std::is_integral<__uint128_t> C++20 错误?

我正在尝试将遗留应用程序升级到 C++20,但遇到了一个错误,如果在 GCC 11.1.0 上没有 --std=c++20 则不会失败: static_assert(std::is_integral_v, …

七月上 2025-01-11 09:36:22 0 0

更改私有模块片段是否会导致模块重新编译?

在 此页面上有关 C ++20模块特性,我发现了这样的说法: 借助私有模块片段,您可以在一个文件中实现一个模块,并使用 module :private; 声明其最后一…

浅唱ヾ落雨殇 2025-01-11 09:01:43 0 0

非导出声明和私有模块片段中的声明有什么区别?

在 cppreference.com 关于模块 上,它提到了导出 : 模块接口单元可以导出声明和定义,这些声明和定义可以由其他翻译单元导入。 […] 给定命名模块在模…

禾厶谷欠 2025-01-11 04:24:39 0 0

C++20 协同例程可以无阻塞地实现同步接口吗?

我正在编写一个 GRPC 服务,并尝试在 Asio 的帮助下使用异步方法。该服务调用具有同步方法的 C++ 库。该库中的代码使用的接口必须由库的用户实现。这…

空城之時有危險 2025-01-11 01:15:46 0 0

使用非类型模板参数的 C++20 概念对类模板进行完全专业化

我对 C++20 概念相当陌生,我正在尝试创建一个模板类 Foo ,该类具有基于非类型(枚举器)模板参数的完全专门化的实现。我已经使用下面的代码测试了我…

橪书 2025-01-11 00:47:40 1 0

constexpr 上下文的灵活数组成员替换

我想要一个以大小/容量为前缀的对象数组。我的要求是: 数组元素应该按需构建,如 std::vector 。 该对象本身将被共享(即堆分配),因此使用 std::ve…

晨曦÷微暖 2025-01-10 20:38:41 0 0

将可变参数包缩短为 N 种

我想编写一个大小为 N (> 0) 和可变数量参数 (>= N) 的类。它应该有一个接受 N 个参数的构造函数和一个具有相同类型的成员 std::tuple : template st…

反差帅 2025-01-10 20:06:33 0 0

捕获 lambda 并移动可分配值

我很困惑为什么捕获 lambda 不可移动分配,但它的手动定义(如带有operator()的结构)却可以。 考虑以下简化代码: struct Environment { Environment…

软的没边 2025-01-10 19:51:48 0 0

在文件系统路径处自动创建文件

即使路径中的中间元素不存在,原子在路径中创建文件的惯用方法是什么? 例如,给定一个如下所示的目录, $ tree one one ├── two └── three 我…

瞳孔里扚悲伤 2025-01-10 11:22:14 1 0

C++检查函数是否存在于容器类中的概念和隐式推导规则

我试图弄清楚如何做一些对我来说在概念和模板类型(如 std::vector)方面似乎很棘手的事情。 我正在尝试应用类似于我在 T 上使用 std::movable 的编译…

半世晨晓 2025-01-10 07:14:14 0 0
更多

推荐作者

卷耳

文章 0 评论 0

佚名

文章 0 评论 0

℉服软

文章 0 评论 0

qq_2gSKZM

文章 0 评论 0

凉宸

文章 0 评论 0

gyhjy

文章 0 评论 0

更多

友情链接

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