C#

  2018-5-25 


闲暇时间做游戏,在学习Unity

由于U3D需要用C#,所以迅速对比java c了解一下C#的语法特性方便记忆。

——————————————————————————

1、析构函数

~object() {}

2、重写方法

override void method() {}

3、继承(类与接口)

public class son : father {}

4、无指针,用引用,同java

5、使用ref关键字进行引用传递(必须初始化)

ref关键字放在需要传递的变量面前,把一个输出参数的内存地址传递给方法(即传递实参)


public void Grow (int _nSpan, **ref** outCurrentAge)

{

this.nAge+=_nSpan;

nOutCurrentAge=this.nAge;

}

主程序中


int nCurrentAge=0;

s.Grow(3 ,**ref** nCurrentAge)

Console.WriteLine(nCurrentAge);

6、使用out关键字进行引用传递(无需初始化)

7、使用params关键字传递多个参数

params关键字指明一个输出参数被看作为一个参数数组,这种类型的输出参数只能作为方法的最后一个输入参数

主要用于,在调用一个方法时,预先不能确定参数的数量、数据类型等。

public void setHobby(**params** string[] _setArrHobby)

{ }

主程序:s.setHobby(“reading”,”singing”,”programing”);

8、比较字符串

int Compare(strA,strB); 输出为0则相等

亦可用lool Equalsint CompareTo

不过,Compare是静态方法,且可重载。

CompareTo不是静态方法,且没有重载形式


且听风吟