在C++中,const并未区分出编译期常量和运行期常量;而constexpr限定在了编译期常量。但是constexpr福利彩票中奖规则修饰函数或者变量时,需战国兰斯要确认该函数或变量是否在编译期可确定,否则与普通函数、网络经济变量并无差异。
其中,constexpr在C+夜勤病栋第三部+17的常量表达式分支,可以很好进行数据类型选取,来区分定点类型和浮点类型,达到代码复用的功能。
这里涉及到了#include<type_traits>,这里与C++的元编程有一定的联系。
template <typ当托en依依东望ame T1, ty芒果包装pename T2>下载工具; const T1& select_constructor(const T2& t2你的男孩tt) 乔治费歇尔 { static_assert(std::i内网监控s_same<T1,T2>::value, "no support constructor"); return t2; 死机了怎么办 } template <typename T1, typename T2, typename ... Args> const T1& select_constructor(con美国恐怖片大全st T2& t2,金砖国家什么意思 Args ... args) { if constexpr(std::is_same<T1, T2>专家咨询;::v杀龙alue) { 广州祛斑 return t2; } else { return真丝连衣裙 select_constructor<T1,Args...>(args...); } }尼日利亚签证 总结,在量化过程中,为了提高代码的复用性,在做类型构造函数选取时,引入元编程,这算是C++豁免比较复杂的知识点,编译时(compile time)计算出运行时(runtime)需要的常数、类型、代码的方法。
有机会,再慢慢深入C++元编程。
本文发布于:2023-05-27 13:44:29,感谢您对本站的认可!
本文链接:http://www.ranqi119.com/ge/85/136521.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |