码迷,mamicode.com
首页 > 编程语言 > 详细

c++之常量表达式

时间:2019-11-24 15:38:02      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:color   space   c++   class   double   argc   argv   简单   必须   

常量表达式看起来像函数,但其实不是函数,函数可以被调用,

#include <iostream>
constexpr double GetPi() { return 22.0 / 7 ;} 
constexpr double TwicePi() { return 2 * GetPi(); }

int main( int argc , char **argv)
{
    using namespace std;
    const double pi = 22.0 / 7; 

    cout << "constant pi contains value " << pi <<endl;
    cout << "constexpr GetPi() returns value" << GetPi() << endl;
    cout << "constexpr TwicePi() returns value" << TwicePi() << endl;             


    return 0; 
}
constant pi contains value 3.14286
constexpr GetPi() returns value3.14286
constexpr TwicePi() returns value6.28571

 

常量表达式GetPi() 和TwicePI()是函数表达式,编译器将每个GetPi()都被替换为 3,14286和TwicePi() 都替换为6.28571,

程序执行的速度比将这些计算放在函数中更快

 

常量表达式必须包含简单的实现,并返回简单类型,常量表达式可以包含简单的决策结构,如if和switch

c++之常量表达式

标签:color   space   c++   class   double   argc   argv   简单   必须   

原文地址:https://www.cnblogs.com/miaorn/p/11922362.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!