文章标题
2015-04-23 11:17
183 查看
枚举
枚举中添加类型,就可以指定其他基本类型:enem orentation : byte{ north=1; //在默认的情况下,每个值都会根据定义的顺序 sorth=2;//(从0 开始),自动的赋给对应的基本类型值 east=3; west=4 }
字符串的处理
string类型变量可以看做是char的只读数组参数数组
参数数组必须是函数定义中的最后一个参数,参数数组可以使用个数不定的参数调用函数//用关键字params定义函数SumVals(),该函数可以接受任意个int参数 //(但不接受其他类型的参数) statuc int SumVals(params int[] vals) { int sun=0; foreach(int val in vals) { sum+=val; } return sum; } //main() int sum=SumVals(1,5,2,9,8);
引用参数 ref,输出参数 out
ref用ref关键字指定参数,对这个变量进行的任何改变都会影响用作参数的变量值。
static void ShowDouble(ref int val) { } //函数调用中必须有ref ShowDouble(ref myNumber);
用作ref参数的变量有两个限制:
(1)函数可能会改变引用参数的值,所以必须在函数调用中使用“非常量”变量。(变量不能被const)
(2)必须使用初始化过的变量。
out
在函数使用out参数时,out参数必须看作还未赋值,即调用代码可以把已赋值的变量用作out参数,存储在该变量中的值会在函数执行时丢失。
多态性
把派生类型的变量赋给基本类型的变量,不需要进行强制类型转换,就可以通过这个变量调用基类的方法,
结果是调用派生类中的方法的实现代码。
注意!不能以相同的方式调用派生类上定义的方法,但是可以把基本类型的变量转换为派生类变量,调用派生类的方法
Cow myNewCow=(Cow)myAnimal; myNewCow.Moo();