在C++中,const 和 constexpr 都是用来定义常量的关键字,但它们在用法和语义上有一些不同。
const
constexpr
const 关键字用于定义常量,并表示该值在程序运行时不可修改。
const int MAX_VALUE = 100;
const int* ptr = &MAX_VALUE;
void printValue(const int value) { // value 不可修改 cout << value << endl; }
constexpr 关键字用于声明常量表达式,表示在编译时就可以计算出结果的表达式。
constexpr int SIZE = 10;
constexpr int square(int x) { return x * x; }
int array[square(5)];
总的来说,const 和 constexpr 都是定义常量的关键字,但它们的应用场景和语义有所不同,具体使用取决于您的需求和情况。
原文链接:codingdict.net