显示页面讨论反向链接回到顶部 本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。 ====== C# 常量 (Constants) ====== 常量是编程中用于存储**固定值**的标识符。在程序执行期间,常量的值**不能被改变**。合理使用常量可以提高代码的可读性和可维护性,避免代码中出现“魔术数字”。 ===== 1. 核心概念 ===== * **不可变性**:常量一旦定义并赋值,在后续的代码执行过程中无法修改。 * **类型支持**:常量可以是任何基本数据类型,例如整数 (`int`)、浮点数 (`double`, `float`)、字符 (`char`)、字符串 (`string`),也可以是枚举 (`enum`)。 * **编译时解析**:常量的值必须在编译时确定。 ===== 2. 定义语法 ===== 使用 ''const'' 关键字来定义常量。 **语法格式:** <code csharp> const <数据类型> <常量名称> = <值>; </code> **注意事项:** * 常量必须在声明时**立即初始化**(赋值)。 * 习惯上,常量名称通常使用 **PascalCase**(帕斯卡命名法)或者全大写(视团队规范而定)。 ===== 3. 代码示例 ===== ==== 基础数值常量 ==== 这是最常见的使用场景,用于定义数学常数或配置阈值。 <code csharp> public class MathUtils { // 用户提供的示例:定义一个双精度浮点常量 public const double Pi = 3.125; // 定义整型常量 public const int MaxRetryCount = 5; } </code> ==== 字符串常量与转义符 ==== 在处理字符串常量时,C# 提供了两种方式:**常规字符串**和**逐字字符串**(Verbatim Strings)。 ^ 类型 ^ 语法特征 ^ 示例 ^ 说明 ^ | **常规字符串** | 使用双引号 `""` | `"Hello\tWorld"` | 需要使用反斜杠 `\` 转义特殊字符(如换行、制表符)。 | | **逐字字符串** | 使用 `@` 前缀 | `@"Hello World"` | 忽略转义符,字符串原样输出,常用于文件路径或多行文本。 | **详细对比示例(参考图片内容):** <code csharp> 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"; } </code> ===== 4. 为什么要使用常量? ===== * **安全性**:防止程序在运行过程中意外修改关键数据。 * **可维护性**:如果 `Pi` 的精度需要调整,只需修改定义处的一行代码,所有引用该常量的地方都会自动更新。 * **可读性**:使用 `MaxRetryCount` 比直接在代码里写 `5` 更容易让人理解代码的意图。 登录 Detach Close 该主题尚不存在 您访问的页面并不存在。如果允许,您可以使用创建该页面按钮来创建它。 csharp/用户常量.txt 最后更改: 2025/11/21 10:40由 张叶安 登录