C#,入门教程(10)——常量、变量与命名规则的基础知识

上一篇:

C#,入门教程(09)------运算符的基础知识https://blog.csdn.net/beijinghorn/article/details/123908269

C#用于保存计算数据的元素,称为"变量"。

其中一般不改变初值的变量,称为常变量,简称"常量"。

无论是常量还是变量,只有给了名字才有意义。变量命名是很讲究的学问。实际工程中,参与者首先拿到的技术文档,都是《xxx系统命名规则》,包括对于变量、常量、枚举及命名空间、类、函数、属性、数据库(表、字段)等等的命名规则。

遵守良好的命名习惯如同遵守交通规则。

一、命名规则

(不限于变量)命名规则,按应用场景稍微很大的区别。

1、顶层名字的命名

命名空间、类、属性、函数等称顶层名字,一般用 Pascal 命名规则------首字母大写。

cs 复制代码
// 命名空间
namespace Legalsoft.Algorithm
{
    // 类
    public class LinearEquation
    {
        // 属性(字段)
        public int Dimension { get; set; } = 0;
        public double[,] Data { get; set; } = null;
        // 方法
        public bool Solution()
        {
            ;
            return true;
        }
    }
}

2、一般变量的命名

用于函数内的变量,一般采用 Camel (驼峰命名法)------ 第一个单词小写,后面按 Pascal 规则。

cs 复制代码
int teachNumber = 0;

3、循环变量的命名

用于循环类语句的变量,选择最短单词或字母,使用 i,j,k等。

如果变量与空间位置、方向有关,则使用 x,y,z 等。

cs 复制代码
// 循环(数组下标)
for(int i=0; i<array.Length; i++) 
{
    array[i] = 0;
}

// 按行、列
for(int y=0; y<Row; y++) 
{
    for(int x=0; x<Column; x++) 
    {
        matrix[y, x] = 0;
    }
}

二、常量

常量是一般不做修改的、有初值的变量。用 constreadonly 加以修饰。

cs 复制代码
// 表示数组的长度
const int arrayLength = 100;

// 应用
int[] arrayTeacher = new int[arrayLength];


// 或者类中间的常量型属性
private readonly int MaxValue = 100;

三、变量

前面其实已经接触了很多次变量了。

cs 复制代码
// 不好
int arrayPosition = 1, arrayRight = 100;

// 好!为什么?30年的经验与教训!
int arrayPosition = 1;
int arrayRight = 100;

没多少,就这么点事。

下一篇:

C#,入门教程(11)------枚举(Enum)的基础知识和高级应用https://blog.csdn.net/beijinghorn/article/details/123917587

相关推荐
j_xxx404_2 分钟前
C++ STL简介:从原理到入门使用指南
开发语言·c++
weixin_307779133 分钟前
C#程序实现将MySQL的存储过程转换为Azure Synapse Dedicated SQL Pool的T-SQL存储过程
c#·自动化·云计算·运维开发·azure
懒惰蜗牛41 分钟前
Day44 | J.U.C中的LockSupport详解
java·开发语言·后端·java-ee
闲人编程43 分钟前
Python设计模式实战:用Pythonic的方式实现单例、工厂模式
开发语言·python·单例模式·设计模式·工厂模式·codecapsule·pythonic
Moniane1 小时前
API技术深度解析:从基础原理到最佳实践
开发语言
扶苏-su1 小时前
Java---String类
java·开发语言·string类
"菠萝"2 小时前
C#知识学习-018(方法参数传递)
学习·c#·1024程序员节
Theodore_10222 小时前
深度学习(3)神经网络
人工智能·深度学习·神经网络·算法·机器学习·计算机视觉
nexttake2 小时前
5.go-zero集成gorm 和 go-redis
开发语言·后端·golang
地平线开发者2 小时前
大模型 | VLA 初识及在自动驾驶场景中的应用
算法·自动驾驶