C++ 常量

在编程中,常量是一种特殊类型的变量,其值在程序执行期间不能被改变。C++ 提供了多种方式来定义和使用常量,这使得代码更加清晰和安全。本章将详细介绍如何在 C++ 中使用常量。

定义常量

使用 const 关键字

const 是 C++ 中定义常量的关键字。通过在声明变量时加上 const 关键字,可以确保该变量的值不会被修改。下面是一个简单的例子:

-- -------------------- ---- -------
-------- ----------
----- --------- ----

--- ------ -
    ----- --- --- - ----
    ---- -- ---- ---- - -- --- -- -----
    -- --- - ---- -- -------------- --- ---
    ------ --
-

使用 constexpr

constexpr 是 C++11 引入的一个关键字,它允许在编译时计算常量表达式的值。与 const 不同,constexpr 更适用于需要在编译时就确定值的情况,比如数组的大小等。

-- -------------------- ---- -------
-------- ----------
----- --------- ----

--- ------ -
    --------- --- ---- - --
    --- ----------- - --- -- -- -- ---
    ---- -- -------- - -- ---- -- -----
    ------ --
-

字面量常量

字面量常量是指那些直接写在程序中的值,比如数字、字符或字符串。它们在 C++ 中被视为常量,因为它们的值在程序执行过程中是固定的。

数字字面量

数字字面量可以是整数、浮点数或十六进制数等。

字符字面量

字符字面量是由单引号括起来的单个字符。

字符串字面量

字符串字面量是由双引号括起来的一系列字符。

符号常量

符号常量是使用预处理器宏定义的常量,通常用于给某些难以记忆的数字赋予一个有意义的名字。

使用预处理器宏定义的常量虽然方便,但在作用域和类型检查方面不如 constconstexpr 灵活和安全。

内置类型常量

除了用户自定义的常量外,C++ 标准库还提供了一些内置类型的常量。这些常量通常位于特定的命名空间或头文件中,比如 <limits> 头文件中定义的数值范围常量。

-- -------------------- ---- -------
-------- ----------
-------- --------
----- --------- ----

--- ------ -
    ---- -- ---- ------- - -- -------------------------- -- -----
    ---- -- ------ ------- - -- ---------------------------- -- -----
    ------ --
-

总结

本章介绍了 C++ 中常量的概念以及几种不同的定义方法,包括使用 constconstexpr 关键字定义常量,以及使用符号常量和内置类型常量。了解和正确使用常量可以使程序更易于理解和维护,并有助于减少潜在的错误。

上一篇: C++ 变量作用域
下一篇: C++ 修饰符类型
纠错
反馈