static const 和 constexpr 变量有什么区别? [复制]

2024-07-01

我明白,一个constexpr variable可以在编译时使用。 对于模板,或者例如 static_assert 。

但如果我想在没有 constexpr 的情况下做到这一点,我可以static const.

自从 C++11/14 引入 constexpr 以来,两者之间的区别是什么

constexpr int a = 3;
//AND
static const int a = 3;

谢谢你!

查看这个问题的另一种方式是我应该使用哪个?


我知道的主要区别是,constexpr必须在编译时知道const static可以在运行时赋值。

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

static const 和 constexpr 变量有什么区别? [复制] 的相关文章

  • 类内枚举前向声明是否可能? [复制]

    这个问题在这里已经有答案了 我知道在 C 11 中可以转发声明枚举类型 如果提供了存储类型 例如 enum E short void foo E e enum E short VALUE 1 VALUE 2 但我想转发声明一个类中定义的枚举
  • 如何使用OpenCV的归一化相关性?

    如何使用 OpenCV 的归一化相关性 有人可以提供代码示例吗 我的问题 我有一个螺丝头图像 需要找到螺丝的中心 所以我正在考虑使用 OpenCV 相关性 这是一个好主意吗 您可以在下面的链接下找到示例图像 http imageshack
  • 格式化具有 X 位小数和 InvariantCulture 的数字?

    我想使用格式化数字ToString CultureInfo InvariantCulture 并且精确到小数点后 5 位 这可以使用ToString N5 我怎样才能同时做这两件事 怎么样使用重载既需要格式又需要文化 http msdn m
  • WPF PasswordBox 中的密码不可绑定的安全优势?

    我只是偶然发现一个事实PasswordWPF 的属性PasswordBoxes 不可绑定安全原因 这使得在 MVVM 上下文中使用它们相当麻烦 答案如https stackoverflow com a 1493330 3198247 htt
  • 泛型类中可空的泛型字段

    我正在尝试做这样的事情 public class MySuperCoolClass
  • “constexpr”有什么用?

    我实在是找不到它有什么用处 我的第一个想法是我可以用它来实现 按合同设计 而不使用如下宏 struct S S constexpr int i S i static assert i lt 9 i must be lt 9 S int i
  • Microsoft.Graph GetAsync() 无限期挂起

    介绍 我正在开发一个 ASP NET 应用程序 除其他外 它应该从 Azure Active Directory 检索用户 为此 我使用 Microsoft Graph 版本 1 14 0 预览库 可以找到该库here https www
  • 使用 X509 证书对多个收件人进行 XML 加密和解密

    我已经成功地使用 MSDN 上的示例来加密和解密 xml 文档 http msdn microsoft com en us library ms229744 aspx http msdn microsoft com en us librar
  • 单元测试依赖注入

    我在用Autofac for IoC 这是我的容器启动器类 其职责是注册依赖项 public class ContainerInit public static IContainer BuildContainer var conFac ne
  • 使用迭代器与索引访问向量元素有什么区别?

    使用迭代器与索引访问向量元素有什么优点 为什么迭代器比索引更好 在索引不可用的情况下 例如 std list 对于 例子 在通用函数接受迭代器的情况下 叫做 编写应该使用的函数模板时 不止一种容器类型 他们的存在是为了创造均匀性在所有容器和
  • 如何在类型依赖于派生类的基模板类中声明成员?

    给定一个使用 CRTP 的基类 我正在考虑在基模板类中声明一个成员 其中类型依赖于派生类 虽然以下内容按预期工作 template
  • C++ 流到内存

    我怎样才能创造std ostream and std istream对象指向我分配和管理的一块内存 我不希望流释放我的内存 我正在考虑使用rdbuf gt pubsetbuf 修改其他流之一 例如sstringstream 不过我认为str
  • C# 我可以访问没有完整限定名称的枚举吗

    我有一个 C 枚举类型 它以非常长的限定名称结尾 例如 DataSet1 ContactLogTypeValues ReminderToFollowupOverdueInvoice 为了便于阅读 如果我可以告诉一个特定的函数只使用名称的最后
  • 双击 C# 中的 Windows 窗体

    如何检测哪个鼠标按钮双击了表单 即左键 右键或中键 Updated 我使用的是 NET2 0 将最后点击的按钮存储在MouseUp事件 然后在双击事件中检查该事件 示例代码 MouseButtons lastButtonUp MouseBu
  • 如何在预处理器中检测X32 ABI或环境?

    X32是一个 ABIamd64 x86 64使用 32 位指针的 CPU 这个想法是将 x86 64 的较大寄存器集与 32 位指针产生的较小内存和缓存占用空间结合起来 它可提供高达约 40 的加速 看x86 x32 和 x64 架构之间的
  • 将 HTML 渲染为图像

    我正在基于动态输入和裁剪图像生成优惠券 并且现在使用 ntml 和 css 显示优惠券 问题是 打印这已成为一个问题 因为打印时背景如何消失以及其他问题 所以我认为最好的解决方案是能够基于html生成图像 或者设置某种接受字符串和图像的模板
  • Dapper 中的自定义映射

    我正在尝试使用带有 Dapper 和多重映射的 CTE 来获取分页结果 我遇到了重复列的不便 例如 CTE 阻止我命名列 我想将以下查询映射到以下对象 而不是列名和属性之间的不匹配 Query WITH TempSites AS SELEC
  • 如何为 Office AddIn 创建静默安装程序

    我在为使用 C 中的 VSTO 开发的 Outlook 加载项创建静默安装程序时遇到问题 安装程序是由 clickOnce 生成的 Outlookaddin vsto 此加载项将由 SCCM 在多台计算机上发布 我需要静默安装 但当软件包到
  • 如何将特殊字符 (0x80..0x9F) 写入 Windows 控制台?

    我想要这段代码 System Console Out WriteLine il display il代替oil正如我的测试程序中所做的那样 The Console OutputEncoding默认设置为Western European DO
  • “System.Int64”类型的表达式不能用于返回类型“System.Object”

    我正在尝试创建以下形式的表达式 e gt e CreationDate CreationDate属于类型long 但是我希望表达式返回一个object反而 我想用object作为返回类型 因为表达式是在运行时根据查询参数动态构建的 查询参数

随机推荐

  • 如何将 Lisp 程序的输出转换为 Python?

    我有一个非常大的 Lisp 项目 我想以编程方式将其输出传输到 Python 程序 即使用 Python 在某些输入上调用 Lisp 程序并将输出返回到 Python 中 该项目仅在 Clozure Common Lisp ccl64 中编
  • JWT(Json Web 令牌)受众“aud”与 Client_Id - 有什么区别?

    我正在努力在我的身份验证服务器中实现 OAuth 2 0 JWT access token 但是 我不清楚 JWT 之间有什么区别aud索赔和client idHTTP 标头值 它们是一样的吗 如果不是 您能解释一下两者之间的区别吗 我的怀
  • Swift 中的 MFMailComposeViewController

    这是示例代码 import UIKit import MessageUI class ViewController UIViewController MFMailComposeViewControllerDelegate IBAction
  • Java在多显示器环境下获取鼠标位置

    我在互联网上搜索了一段时间 但没有找到任何解决我的问题的方法 我知道你可以通过以下方式获取当前鼠标位置 PointerInfo a MouseInfo getPointerInfo Point b a getLocation 问题是在多环境
  • 从 git 安装时,我可以强制 pip 进行浅表签出吗?

    以下命令从 git 存储库安装 Python 包 pip install git ssh email protected cdn cgi l email protection username repo git Collecting git
  • WiFiManager - 绊脚石

    我尝试使用 iphone os 2 0 和 3 0 使用 stumbler 获取 ssid 但出现错误 发现缺少一些框架 谁能告诉我如何恢复 我发现 StackOverflow 上有一篇文章提到 PrivateFrameworks Appl
  • 我需要将链接服务器添加到 MS Azure SQL Server

    我试了又试 还是无法链接 我可以使用 SSMS 连接到服务器 但无法从本地服务器链接到它 这是我的脚本 用相关信息替换括号中的内容 EXEC master dbo sp addlinkedserver server N servername
  • 如何获取mp3曲目的时长?

    我想问一下如何在应用程序中获取音频文件的长度 我正在像这样加载曲目 var installFolder Windows ApplicationModel Package Current InstalledLocation var resou
  • 在容器大小调整时调整传单地图的大小

    我有一个 div 包含传单地图 在某些事件发生时 高度 div 将会被改变 我希望地图能够调整到其周围的新尺寸 div 以便旧中心位于调整大小的较小或较大地图的中心 我尝试使用invalidateSize 功能 但似乎根本不起作用 之后如何
  • 使用 Git 在本地保存文件的不同版本与在主存储库中保存文件的不同版本

    我有一个 PHP 配置文件 我想在本地操作 但忽略期间的这些更改git commits到我的主存储库 我曾有一个 gitignore文件曾经忽略这个 PHP 文件 但发生了不好的事情 现在config php文件不再被忽略 我不记得如何重新
  • 使用 node/pino 记录到 STDOUT 和文件

    我分享这个是因为我努力让 pino 记录器写入 STDOUT 和日志文件 const dest new stream PassThrough dest pipe process stdout dest pipe fs createWrite
  • 在 Android Studio 中重命名包

    我正在尝试重命名我的 Android Studio 包 如第一个答案中所述 Android Studio重命名包 https stackoverflow com questions 16804093 android studio renam
  • Sphinx搜索如何使用空的before_match和after_match

    使用狮身人面像片段 http sphinxsearch com docs current html sphinxql select功能 我怎样才能删除任何before match and after match从我的查询 我不希望匹配文本周
  • 将 std::lock_guard 与 try_lock 一起使用

    有什么办法可以告诉我std lock guard打电话try lock代替lock当它获取互斥锁时 我能想到的唯一方法是使用std adopt lock if mutex try lock Handle failure and return
  • 一个类的多个实例

    我正在尝试用 python 编写各种动物的生活模拟 不可能命名我将要使用的类的每个实例 因为我无法知道会有多少个实例 所以 我的问题是 如何自动为对象命名 我正在考虑创建一个 Herd 类 它可以是该类型的所有动物同时存活 嗯 通常 您只需
  • 解释 Spark Structured Streaming 执行器和 Kafka 分区之间的映射

    我已经在具有 4 个分区的 Kafka 主题上部署了一个由 4 个工作人员组成的结构化流 我假设将为 4 个分区部署 4 个工作人员 工作人员 分区之间具有一对一的映射 但是 事实并非如此 所有分区都由同一个执行器提供服务 我通过检查执行器
  • Asp.Net Mvc 5 图像不显示

    我有相同的图像Content and Views文件夹 我正在尝试显示图像 如下所示 img src Content Images download png alt Content folder br br img src Views Ho
  • PyCharm 中基于类型的自动补全

    我正在使用 PyCharm 进行 python 编码 PyCharm 中的自动完成功能不如 IntelliJ Java 中的自动完成功能 考虑下面的代码 a 1 2 3 4 a 在这种情况下 当我按下dot PyCharm 提供了全套自动完
  • WPF DataGrid 在行删除后失去焦点

    我正在使用 WPF DataGrid 通过键盘 删除 键进行行删除 但是 删除该行后 DataGrid 失去焦点 并且 DataGrid SelectedIndex 1 与WinForm datagrid相比 删除一行后 焦点自动转移到下一
  • static const 和 constexpr 变量有什么区别? [复制]

    这个问题在这里已经有答案了 我明白 一个constexpr variable可以在编译时使用 对于模板 或者例如 static assert 但如果我想在没有 constexpr 的情况下做到这一点 我可以static const 自从 C