C++20 中允许 east constexpr / constinit / consteval 吗?

2024-01-06

我在网上找到的大多数例子都更喜欢“西方风格”constexpr(C++11),consteval, and constinit(C++20):

consteval auto sqr(int n) {
  return n*n;
}
constexpr auto r = sqr(100);  // OK
constinit static auto x = r; 

由于我不是语言律师,所以我有以下问题: 这些说明符是否允许“东方风格”?例子:

auto consteval sqr(int n) {
  return n*n;
}
auto constexpr r = sqr(100);  // OK
static auto constinit x = r; 

需要明确的是:我无意发起一场“西方”/“东方”语言战争。我对意见不感兴趣,只对事实感兴趣,尤其是 wandbox 上的 clang 和 gcc head 版本此时给出错误,但没有答案constinit / consteval.


Sort of.

它是的一部分声明说明符序列,其中的说明符可以按任意顺序排列。这与允许您编写的规则相同volatile int static long unsigned inline long const x = 1;

但它不属于声明者(特别是,ptr 运算符),所以你不能这样做int* constexpr x = nullptr;.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++20 中允许 east constexpr / constinit / consteval 吗? 的相关文章

  • 编译时运算符

    有人可以列出 C 中可用的所有编译时运算符吗 C 中有两个运算符 无论操作数如何 它们的结果始终可以在编译时确定 它们是sizeof 1 and 2 当然 其他运算符的许多特殊用途可以在编译时解决 例如标准中列出的那些整数常量表达式 1 与
  • “构建”构建我的项目,“构建解决方案”则不构建

    我刚刚开始使用VS2010 我有一个较大的解决方案 已从 VS2008 成功迁移 我已将一个名为 Test 的控制台应用程序项目添加到解决方案中 选择构建 gt 构建解决方案不编译新项目 选择构建 gt 构建测试确实构建了项目 在失败的情况
  • WCF RIA 服务 - 加载多个实体

    我正在寻找一种模式来解决以下问题 我认为这很常见 我正在使用 WCF RIA 服务在初始加载时将多个实体返回给客户端 我希望两个实体异步加载 以免锁定 UI 并且我想利用 RIA 服务来执行此操作 我的解决方案如下 似乎有效 这种方法会遇到
  • Web 客户端和 Expect100Continue

    使用 WebClient C NET 时设置 Expect100Continue 的最佳方法是什么 我有下面的代码 我仍然在标题中看到 100 continue 愚蠢的 apache 仍然抱怨 505 错误 string url http
  • 嵌套接口:将 IDictionary> 转换为 IDictionary>?

    我认为投射一个相当简单IDictionary
  • 如何使用 ICU 解析汉字数字字符?

    我正在编写一个使用 ICU 来解析由汉字数字字符组成的 Unicode 字符串的函数 并希望返回该字符串的整数值 五 gt 5 三十一 gt 31 五千九百七十二 gt 5972 我将区域设置设置为 Locale getJapan 并使用
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • 堆栈溢出:堆栈空间中重复的临时分配?

    struct MemBlock char mem 1024 MemBlock operator const MemBlock b const return MemBlock global void foo int step 0 if ste
  • 将 VSIX 功能添加到 C# 类库

    我有一个现有的单文件生成器 位于 C 类库中 如何将 VSIX 项目级功能添加到此项目 最终目标是编译我的类库项目并获得 VSIX 我实际上是在回答我自己的问题 这与Visual Studio 2017 中的单文件生成器更改 https s
  • C#中如何移动PictureBox?

    我已经使用此代码来移动图片框pictureBox MouseMove event pictureBox Location new System Drawing Point e Location 但是当我尝试执行时 图片框闪烁并且无法识别确切
  • 创建链表而不将节点声明为指针

    我已经在谷歌和一些教科书上搜索了很长一段时间 我似乎无法理解为什么在构建链表时 节点需要是指针 例如 如果我有一个节点定义为 typedef struct Node int value struct Node next Node 为什么为了
  • 将多个表映射到实体框架中的单个实体类

    我正在开发一个旧数据库 该数据库有 2 个具有 1 1 关系的表 目前 我为每个定义的表定义了一种类型 1Test 1Result 我想将这些特定的表合并到一个类中 当前的类型如下所示 public class Result public
  • 显示UnityWebRequest的进度

    我正在尝试使用下载 assetbundle统一网络请求 https docs unity3d com ScriptReference Networking UnityWebRequest GetAssetBundle html并显示进度 根
  • 使用 Bearer Token 访问 IdentityServer4 上受保护的 API

    我试图寻找此问题的解决方案 但尚未找到正确的搜索文本 我的问题是 如何配置我的 IdentityServer 以便它也可以接受 授权带有 BearerTokens 的 Api 请求 我已经配置并运行了 IdentityServer4 我还在
  • 转发声明和包含

    在使用库时 无论是我自己的还是外部的 都有很多带有前向声明的类 根据情况 相同的类也包含在内 当我使用某个类时 我需要知道该类使用的某些对象是前向声明的还是 include d 原因是我想知道是否应该包含两个标题还是只包含一个标题 现在我知
  • 控件的命名约定[重复]

    这个问题在这里已经有答案了 Microsoft 在其网站上提供了命名指南 here http msdn microsoft com en us library xzf533w0 VS 71 aspx 我还有 框架设计指南 一书 我找不到有关
  • 如何在 C 中调用采用匿名结构的函数?

    如何在 C 中调用采用匿名结构的函数 比如这个函数 void func struct int x p printf i n p x 当提供原型的函数声明在范围内时 调用该函数的参数必须具有与原型中声明的类型兼容的类型 其中 兼容 具有标准定
  • WPF/C# 将自定义对象列表数据绑定到列表框?

    我在将自定义对象列表的数据绑定到ListBox in WPF 这是自定义对象 public class FileItem public string Name get set public string Path get set 这是列表
  • 如何将服务器服务连接到 Dynamics Online

    我正在修改内部管理应用程序以连接到我们的在线托管 Dynamics 2016 实例 根据一些在线教程 我一直在使用OrganizationServiceProxy out of Microsoft Xrm Sdk Client来自 SDK
  • C++ 中类级 new 删除运算符的线程安全

    我在我的一门课程中重新实现了新 删除运算符 现在我正在使我的代码成为多线程 并想了解这些运算符是否也需要线程安全 我在某处读到 Visual Studio 中默认的 new delete 运算符是线程安全的 但这对于我的类的自定义 new

随机推荐

  • 使用selenium在多个浏览器上同时运行python SCRIPT

    我想使用 selenium 在多个浏览器上运行我的脚本 到目前为止 我可以通过一次打开一个浏览器来执行该操作 例如 注册亚马逊 我希望能够同时向亚马逊注册两个用户 这是我现在拥有的代码 import time from selenium i
  • cin.get() 循环

    我试图从标准输入读取 第一行是我要阅读的行数 我接下来读到的行将再次打印 这是代码 include
  • Print/Debug.Log 未在 Unity 控制台上显示输出

    I am trying to print a simple statement using C on Unity Console but i don t know why it is not printing 如果打印有not work D
  • 为 UWP 构建 OpenCV

    我目前正在努力为 UWP 构建 OpenCV 我已经用谷歌搜索了很多并发现微软的 OpenCV Github 存储库 https github com Microsoft opencv tree vs2015 samples从技术上讲 这应
  • 如何在 swift 中声明一个可在 Objective C 中使用的常量

    如果我将 swift 常数声明为全局常数 like let a 123 but the a无法在以下位置找到目标c 怎么解决这个问题呢 SWIFT代码 public class MyClass NSObject public static
  • C++ HDF5 找不到 -lhdf5d

    情况 我想创建一个程序来读取一些内容 hdf5 file 我做了什么 没什么 但添加hdf5 lib到项目 Problem 我收到两个错误 当我尝试运行该程序时 cannot find lhdf5d error ld returned 1
  • SELECT 非规范化列到单独的记录中?

    我正在使用 SQL 一点 这样如果我在工作面试中被问到 我就不会完全不知道它 我的朋友最近在面试时被问到以下问题 他答不出来 我问了工作中熟悉 SQL 的人 他也不知道 你们能帮我回答这个问题 然后解释一下它是如何工作的吗 请 问题 数据库
  • “ccache”配置

    我有一个与 ccache 配置相关的问题 在我们的开发环境中 我们有数百个使用绝对路径构建对象的 make 文件 我想加快进程并使用 ccache 不幸的是 当从不同位置编译时 我可以看到缓存未命中 下面是一个例子 简化了源文件放置在不同目
  • Java 数据流编程 API? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何在 JDBC 上执行这条 Oracle 语句

    我在使用 JDBC 准备好的语句执行以下操作时遇到问题 CREATE OR REPLACE TRIGGER Time trg BEFORE INSERT ON Time FOR EACH ROW BEGIN SELECT Time seq
  • 使用 Jackson 从字符串反序列化 LocalDateTime

    我正在尝试反序列化String to LocalDateTime与杰克逊 但它不起作用 我有一个带有 LocalDateTime 字段的数据类 Data public class Registration JsonFormat shape
  • 在 IDS4 和 ASP.NET Core 2.2 下使用 JwtToken 访问安全页面时出现 401 错误

    我通过添加以下行配置了 MVC 客户端 services AddAuthentication JwtBearerDefaults AuthenticationScheme AddJwtBearer 正如 某种程度上 预期的那样 错误消息是
  • 我可以使用 getopt 按特定顺序处理选项吗?

    我正在实现一个命令行工具 并且我需要能够处理一堆选项 某些选项完成后必须终止程序 例如我有选项a b和c 如果 a 和 b 在完成后终止 并且我发出命令 myprogram bca file 在这种情况下 有没有办法使用 getopt 给予
  • 大 O 与小 omega

    为什么 n 小于 O n 我知道什么是小欧米茄 例如 n log n 但我不明白为什么 n 小于 O n 大 Oh O 是上限 小 omega 是上限Tight下限 O g n f n 存在正常数 c 和 n0 使得 0 f n cg n
  • 如何在jmeter中对csv数据集配置的文件名文本进行参数化

    我将 csv 数据集配置中归档的文件名文本的值传递为 filename 该变量包含整个路径 并从另一个 csv 数据集配置中获取它 该配置直接存在于线程组和我所在的变量中传递到 if 控制器内部的 csv 数据集配置我无法将该值传递到文件名
  • 在 C# .net 中发送电子邮件

    我有以下代码来发送电子邮件 System Net Mail SmtpClient client new System Net Mail SmtpClient client Send email protected cdn cgi l ema
  • 使用 PHP 编写“if”条件语句有哪些不同方法?

    使用 PHP 编写 if 条件语句有哪些不同的方式 我知道以下示例 if test 1 else and if test 1 echo asdsa else echo sdaaa 有的是替代控制结构语法 http php net manua
  • 字符串字典:任何不符合协议“可解码”[重复]

    这个问题在这里已经有答案了 我正在尝试实现 Decodable 来解析 json 请求 但 json 请求在对象内部有一个字典 这是我的代码 struct myStruct Decodable let content String Any
  • iOS-将数组对象复制到另一个数组对象中

    我有一个小问题 我需要帮助 我想循环遍历一个多维数组 每次我找到一个键 ex name 等于 ex 的值 你好 我想将该数组对象复制到另一个数组中 我怎么做 您将这样做 NSArray newArray NSArray arrayWithA
  • C++20 中允许 east constexpr / constinit / consteval 吗?

    我在网上找到的大多数例子都更喜欢 西方风格 constexpr C 11 consteval and constinit C 20 consteval auto sqr int n return n n constexpr auto r s