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

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

相关推荐
不正经学生2 小时前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
门思科技2 小时前
LoRaWAN 设备类别:Class A、B、C 对比与选型指南
c语言·开发语言·php
恋恋西风5 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx5 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_5 小时前
C++(22)——类型转换和IO流
开发语言·c++
小范同学_5 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
geovindu6 小时前
CSharp: 万年历
开发语言·后端·c#·.net
我找到地球的支点啦6 小时前
Matlab系列(009) 一CRC循环冗余校验详解
开发语言·数据结构·算法·matlab·信息与通信
予昊6 小时前
从零实现“在线五子棋对战“:WebSocket 实时通信 + 段位匹配
java·开发语言·网络·websocket
weixin_461408587 小时前
Mybatis-flex小记
java·开发语言·mybatis