温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C++怎么使用常量表达式函数在编译时求值

发布时间:2021-11-24 10:48:19 来源:亿速云 阅读:139 作者:iii 栏目:大数据

这篇文章主要介绍“C++怎么使用常量表达式函数在编译时求值”,在日常操作中,相信很多人在C++怎么使用常量表达式函数在编译时求值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++怎么使用常量表达式函数在编译时求值”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

T.123:使用常量表达式函数在编译时求值

Reason(原因)

A function is the most obvious and conventional way of expressing the computation of a value. Often a constexpr function implies less compile-time overhead than alternatives.

函数是表达求值的最显然,最便利的方式。通常,常量表达式函数比其他选项需要的编译时代价更小。

Note(注意)

"Traits" techniques are mostly replaced by template aliases to compute types and constexpr functions to compute values.

“特征”技术用于计算类型时基本上已经模板别名所代替,用于求值时则可以用常量表达式函数代替。

Example(示例)

template<typename T>
   // requires Number<T>
constexpr T pow(T v, int n)   // power/exponential
{
   T res = 1;
   while (n--) res *= v;
   return res;
}

constexpr auto f7 = pow(pi, 7);
Enforcement(实施建议)
  • Flag template metaprograms yielding a value. These should be replaced with constexpr functions.

  • 标记返回数值的模板元编程。它应该被常量表达式函数代替。

到此,关于“C++怎么使用常量表达式函数在编译时求值”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

c++
AI