【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 必须分清

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

相关推荐
布莱克6054 小时前
C/C++ 中变量的声明与定义:区别、联系与常见误区
c语言·开发语言·c++·声明·定义
LabVIEW开发4 小时前
LabVIEW 局部变量为何引发竞争条件?四种同步机制
开发语言·labview
benchmark_cc4 小时前
A 股、港股、美股如何建立统一的标的主数据格式?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
Zenova EdgeOS6 小时前
Go 工业边缘错误处理实战:用 errors 构建可追溯错误链
开发语言·数据库·golang
取名真是6 小时前
Python 算法知识点从基础到进阶
开发语言·python·算法
FRing036 小时前
vue2干货总结3(computed计算属性、watch监听器)
开发语言·前端·vue.js·vue2
Fatbobman(东坡肘子)7 小时前
快速消失的硬盘容量 -- 肘子的 Swift 周报 #160
开发语言·人工智能·redis·ios·swiftui·iphone·swift
揽星河..7 小时前
【C语言】底层程序设计
c语言·开发语言
JavaPub-rodert7 小时前
从零搭建通用管理后台:ShiyuAdmin 的 Go、React 与 RBAC 实践
开发语言·react.js·golang
海的透彻8 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言