上一篇:
C#,入门教程(21)——命名空间(namespace)与程序结构的基础知识https://blog.csdn.net/beijinghorn/article/details/124140653
一个软件的结构大体如下:
大厦application: a plaza
{
----有若干层namespace: have some levels
----{
--------每一层有若干房间class: level have some rooms
--------{
------------房间有一些东西attributes: rooms have some things
------------房间里面可以用这些东西搞一些事情functions: and can do somethings with somethings.
--------}
----}
}
函数与属性都是结构体、类的组成部分。
属性(字段)用于保存数据。
函数就是用数据处理,并得到一些记过的功能性程序模块。
函数既可以处理本类/结构体的数据,也可以处理外部的其他数据。
public class className
{
?? ?public int AttName { get; set;} = 0;
?? ?public string OutputAtt()
?? ?{
?? ??? ?return String.Format("{0:D8}", AttName);
?? ?}
}
public void Step()
{
?? ?Att += 1;
}
public string Print()
{
?? ?return String.Format("{0:D8}", Att);
}
public string PrintD8(int a)
{
?? ?return String.Format("{0:D8}", a);
}
a 称为“参数”。参数可以很多,用逗号分开即可。
public int Sum(int a, int b)
{
?? ?return (a + b);
}
public int Sum(int[] a)
{
?? ?int sum = 0;
?? ?for(int i=0; i<a.Length; i++)
?? ?{
?? ??? ?sum += a[i];
?? ?}
?? ?return sum;
}
public int[] Sum(int[] a)
{
?? ?int sum = 0;
?? ?int max = int.MinValue;
?? ?int min = int.MaxValue;
?? ?for(int i=0; i<a.Length; i++)
?? ?{
?? ??? ?sum += a[i];
?? ??? ?if(a[i] < min) min = a[i];
?? ??? ?if(a[i] > max) max = a[i];
?? ?}
?? ?return new int[3] { min, max, sum };
}
public double Mean(int[] a, out int min, out int max, out int sum)
{
?? ?sum = 0;
?? ?max = int.MinValue;
?? ?min = int.MaxValue;
?? ?for(int i=0; i<a.Length; i++)
?? ?{
?? ??? ?sum += a[i];
?? ??? ?if(a[i] < min) min = a[i];
?? ??? ?if(a[i] > max) max = a[i];
?? ?}
?? ?return ((double)sum / a.Length);
}
一般而言,参数仅仅作为原始数据传入函数,不能修改参数的数据。
需要一点点技术的定义。
public void MoveTo(ref int[] p, double rad, double angle)
{
?? ?p[0] += rad * Math.Cos(angle * Math.PI / 180.0);
?? ?p[1] += rad * Math.Sin(angle * Math.PI / 180.0);
}
1、重载 override 与 重写 new
2、委托 delegate 与 接口 interface
3、递归方法 Recurse Method
这些知识是后面会逐个讲解的,先列出目录。
1、每个函数不要写太多行!
2、只要是可能重复的,都写成函数(模块化!)
3、追求功能而不是性能的前提下,可用传入参数,而不是直接使用属性;
4、函数的名字要用全称的英语单词,不要简写或莫名其妙的,比如 AA BB WC。
下一篇:
C#,入门教程(23)——数据类型转换的一点基础知识https://blog.csdn.net/beijinghorn/article/details/124187182
?