目录

C# 常量 (Constants)

常量是编程中用于存储固定值的标识符。在程序执行期间,常量的值不能被改变。合理使用常量可以提高代码的可读性和可维护性,避免代码中出现“魔术数字”。

1. 核心概念

2. 定义语法

使用 const 关键字来定义常量。

语法格式:

const <数据类型> <常量名称> = <>;

注意事项: * 常量必须在声明时立即初始化(赋值)。 * 习惯上,常量名称通常使用 PascalCase(帕斯卡命名法)或者全大写(视团队规范而定)。

3. 代码示例

基础数值常量

这是最常见的使用场景,用于定义数学常数或配置阈值。

public class MathUtils
{
    // 用户提供的示例:定义一个双精度浮点常量
    public const double Pi = 3.125;
 
    // 定义整型常量
    public const int MaxRetryCount = 5;
}

字符串常量与转义符

在处理字符串常量时,C# 提供了两种方式:常规字符串逐字字符串(Verbatim Strings)。

类型 语法特征 示例 说明
常规字符串 使用双引号 `““` `”Hello\tWorld”` 需要使用反斜杠 `\` 转义特殊字符(如换行、制表符)。
逐字字符串 使用 `@` 前缀 `@“Hello World”` 忽略转义符,字符串原样输出,常用于文件路径或多行文本。

详细对比示例(参考图片内容):

public void StringExamples()
{
    // 1. 常规字符串:需要转义
    // 输出: hello    world (中间有制表符)
    string c = "hello \t world"; 
 
    // 2. 逐字字符串:原样输出
    // 输出: hello \t world (直接输出字符 \t)
    string d = @"hello \t world";
 
    // 3. 处理双引号
    // 常规:需要用 \" 表示引号
    string e = "Joe said \"Hello\" to me";
    // 逐字:需要用 "" (两个双引号) 表示一个引号
    string f = @"Joe said ""Hello"" to me";
 
    // 4. 处理文件路径 (最常用场景)
    // 常规:必须使用 \\ 来表示反斜杠
    string g = "\\\\server\\share\\file.txt";
    // 逐字:直接书写路径,可读性更高
    string h = @"\\server\share\file.txt";
 
    // 5. 多行字符串
    // 常规:需要使用 \r\n
    string i = "one\r\ntwo\r\nthree";
    // 逐字:直接换行书写
    string j = @"one
two
three";
}

4. 为什么要使用常量?