C#基础知识之四
由朱朱编写,转载请注明出自朱朱家园http://blog.csdn.net/zhgl7688
1、 条件运算符是三元运算符(?:):它有一个测试表达式和两个结果表达式,测试为true,返回第一个结果表达式,否则返回第二个结果表达式。
2、 用户定义类型转换分为:隐式转换和显式转换,前者编译自动进行转换,后者只在使用显示转换运算符时才执行转换。
3、 隐式转换:用publicstatic implicit operator,显式转换用explicit替换implicit。例子http://blog.csdn.net/zhgl7688/article/details/42090383
4、 一个类中不能同时写显式和隐式声明,只能是其中一个,但是如果声明了隐式的转换,那么其对应的显示转换也会自动提供。如果声明了显式转换,其对应的隐式转换不会提供的此文件。
5、 运算符重载只能用于类和结构,用operator关键字声明,参数中至少有一个必须是class或struct类型;声明为public static。例:public static 类型operator 操作符(参数class/struct,…..){// …..}。
6、 不是所有运算符都能被重载。重载的类型不能做:创建新运算符、改变运算符的语法、重新定义运算符如何处理预定义类型、改变运算符的优先级或结合性。
7、 Typeof运算符返回作为它的参数的任何类型的System.Type对象。Type t=type(someclass)。不能重载typeof运算符。
8、 语句的种类:声明语句、嵌入语句、标签语句。
9、 控制流语句:条件语句(if、if…else、switch)、循环语句(while、do、for、foreach)、跳转语句(break、continue、return、goto、throw);
10、 Switch语句中case之后表达式必须是常量表达式而且必须在编译期被编译完全求值,必须与测试表达式类型相同。其后面必须是一个break或goto语句,除非在这两个分支标签之间没有插入可执行语句。
11、 Do…while(测试表达式):在测试表达式的关闭括号后面需要一个分号。
12、 For循环:语句一些部分是可选的,但分号是必须的。初始化语句和迭代表达式可以包含多个表达式,只要它们用逗号隔开。
13、 Break语句用于:for、foreach、while、do。用于执行跳出最内层封装的语句。
14、 Continue语句用于:while、do、for、foreach。用于执行转到下次循环的语句。
15、 标签语句:由一个标识符后面跟着一个冒号再跟一条语句组成。只允许用在块内部。
16、 标签:有自己的声明空间,但不能在重叠范围内与另一个标签标识符相同,也不能是关键字。
17、 标签语句的范围:声明所在块、任何嵌套在该块内部的块。
18、 Goto语句:无条件转到标签语句处。还可用在switch语句内部,控制转移内部相应命名的分支标签。
19、 Using语句不同于using引用,有助于简化该过程并确保资源被适当地处理。‘
20、 Using语句可被用于相同类型的多个资源,资源声明用逗号隔开。Using可以被嵌套。
样式:Using ( ResouceType Id1=Expr1,Id2=Expr2,… .) EmbededStatement
此文件由朱朱编写,转载请注明出自朱朱家园http://blog.csdn.net/zhgl7688