C++14我应该多久使用一次constexpr
C++14 How often should I use constexpr?
我一直在读一本关于C++14/11的书。我刚读完关于constexpr
关键字的一章。我知道它的用途,但我应该多久使用一次constexpr
?即使在我知道永远不会用于创建contstexpr
对象的类的代码中,我也应该使用它吗?(以防万一,因为它不会花我任何钱,对吧?)
C++14我应该多久使用一次constexpr?
在Scott Meyer的《有效的现代C++》一书的第15项(尽可能使用constexpr)中有一个广泛的讨论。
这个项目的大纲是,constexpr
应该尽可能使用,因为constexpr
函数和对象可以在比非constexpr
函数和对象更广泛的上下文中使用。
然而,在同一条中,作者提到了过度使用constexpr
的警告。也就是说,如果您决定将对象或函数限定为constexpr
,您的客户端将被允许在constexpr
内容中使用它。但是,如果您后来决定此代码不能是constexpr
并删除constexpr
,这可能会导致您的代码无法编译,包括这将对您的客户端产生的副作用。
引用原文:
"尽可能使用constexpr"是指你愿意长期致力于它对对象和应用于的函数。
相关文章:
- 我是否需要在下一次转移时将所有权*转移回转移队列
- 使用仅使用一次的变量调用的复制构造函数.这可能是通过调用move构造函数进行编译器优化的情况吗
- 在C++中一次将矢量值写入多个文件
- 循环中的条件:为什么每次都调用strlen(),而vector.size()只调用一次
- 为什么 zlib 放气初始化调用一次不起作用?
- 在一次迭代中从 txt 文件中读取多行
- 为什么无论你输入什么,这"while(cin.get(str,3))"只运行一次?
- 在头文件和 cpp 文件中使用一次 #pragma 时出现结构重定义错误
- 有没有办法一次声明相同类型的多个对象,并通过一个表达式立即使用相同的右值初始化它们?
- 高级选择排序 - 在一次迭代中搜索两个元素
- 具有相同特征的两个对象是否只在内存中存储一次?无论定义它们的函数是什么,都是不同的
- 如何仅使用一次固定<<设置精度(2)?或者至少恢复到默认行为?
- 什么是仅调用一次并调用参数的控制台应用
- 如何确保用户在一行上提示输入一次时输入名字和姓氏?
- (C++)虽然循环一次不起作用,但我引入了多个变量
- 为什么我的信号处理程序只执行一次?
- 如何使用C++一次读取整个二进制文件
- 为什么 #pragma 一次不防范多个非 constexpr 定义?
- 如何在 constexpr 构造函数中初始化矩阵一次?
- C++14我应该多久使用一次constexpr