一、C#中的“///”注释
此注释严格地说,是“//”注释的扩展,都为单行注释。正常情况下,编译器会忽略他们,但是可以配置VS,在编译项目时,提取这些注释后面的文本,创建一个特殊格式的文件,该文件可用于创建文档说明。
二、C#中的浮点数变量的种类
Float、double、decimal。前两种可以用“+/-m×2e”的形式存储浮点数,m和e的值因类型而异。decimal使用另一种形式:+/-10e。
三、C#命名空间有两种约定:PascalCase和camelCase
PascalCase命名的第一个字母大写,主要用于较高级的命名规则。
CamelCase命名的第一个字母小写,主要用于简单变量的命名。
而带下滑线的命名方式微软认为已经退出历史舞台了,不建议使用~
四、负数在计算机中的存储形式
负数在计算机中先将负数取反(二进制)再加一,例如int型的
5为:1111 1111 1111 1111 1111 1111 1111 1011
-5为:0000 0000 0000 0000 0000 0000 0000 0101
之所以这样做的处理的原因是方便做运算,例如10-5(等同于10 + (-5)),则二进制执行的时候为:
0000 0000 0000 0000 0000 0000 0000 1010
+ 1111 1111 1111 1111 1111 1111 1111 1011
=1 0000 0000 0000 0000 0000 0000 0000 0101
而最左端的1则被忽略了,则剩下的就为5
五、C#中声明参数的params、ref和out关键字
parames关键字:在function声明中使用params关键字之后不允许其他任何参数,且只允许一个params关键字。
例如:
static void UseParams( params int[] vals )//调用UseParams函数时这里只能传递int[]的实参
{
......
}
ref关键字:是参数按引用传递,使用方式类似C/C++中的取地址符“&”。
例如:
static void UseRef( ref int i )
{
i++; //这里i每次加一都会改变传进函数的实参的值
……
}
out关键字:out关键字的使用方式与ref相同,但是存在不同:使用out关键字定义变量,则变量在这之前只需定义,而ref关键字则需要进行初始化。
六、函数的重载
函数的重载必须是函数的参数的类型、个数不同,而返回值的类型不用则不是函数的重载。