【C# 入门】变量、常量与命名规范

一、什么是变量

变量的本质是给内存中的一块空间取个名字,变量必须先声明再使用。

二、var关键字,不是动态类型

cs 复制代码
var number = 10;

很多人会以为这是"弱类型"或"动态类型",这是错误的。var只是编译期间的类型推断,编译后仍然是int类型。var 的变量必须初始化,通常建议右侧类型一眼能看出来时再用 var。

三、常量(const):真正的"不可变"

cs 复制代码
const int A = 3;

const 是编译期常量,必须在声明时赋值,且不能修改;A 的值会被直接"拷贝"进使用它的代码中,修改 const 后,引用它的程序集需要重新编译。

四、readonly

readonly是运行时常量,只能在声明时或构造函数中赋值。

五、变量命名规范

命名是程序员之间最重要的沟通方式。不是写给编译器看的,是写给后来维护代码的人看的。

C# 命名规范:

  • 局部变量 / 参数:camelCase
cs 复制代码
int fileCount;
string userName;
  • 私有字段:_camelCase
cs 复制代码
private int _retryCount;
private string _connectionString;
  • 属性 / 方法 / 类:PascalCase
cs 复制代码
public int RetryCount { get; set; }

public void StartService() { }

public class UserManager { }

六、变量作用域

变量只在定义它的代码块内有效

cs 复制代码
if (true)
{
    int x = 10;
}
Console.WriteLine(x); // 编译错误

七、总结

  • 变量是代码的基础

  • const 和 readonly 必须分清

  • 命名规范直接决定代码质量

相关推荐
sunwenjian88614 小时前
Java进阶——IO 流
java·开发语言·python
波特率11520014 小时前
const关键字与函数的重载
开发语言·c++·函数重载
FL162386312914 小时前
[C#][winform]segment-anything分割万物部署onnx模型一键抠图演示
开发语言·c#
百锦再14 小时前
Java 并发编程进阶,从线程池、锁、AQS 到并发容器与性能调优全解析
java·开发语言·jvm·spring·kafka·tomcat·maven
条tiao条15 小时前
KMP 算法详解:告别暴力匹配,让字符串匹配 “永不回头”
开发语言·算法
干啥啥不行,秃头第一名15 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
2301_8073671915 小时前
C++中的解释器模式变体
开发语言·c++·算法
always_TT16 小时前
C语言中的字符与字符串(char数组)
c语言·开发语言
forAllforMe16 小时前
LAN9252 从机寄存器配置--C语言举例
c语言·开发语言
weixin_5375904516 小时前
《C程序设计语言》练习答案(练习1-4)
c语言·开发语言