
枚举转换
隐式枚举转换
只允许将0转换为枚举类型变量
`Color a; a=0;`
显式枚举转换
`Color a=Color.red; int x=(int) a;`
2019-01-24 10:59
标签
C#
2019-01-24 10:59
标签
C#
枚举转换
隐式枚举转换
只允许将0转换为枚举类型变量
`Color a; a=0;`
显式枚举转换
`Color a=Color.red; int x=(int) a;`


方法的参数、参数数组params的使用、
- 值参数(即形参)
编译器为值参数分配存储空间,然后将对应的实参的值拷贝到形参中
对形参的改变不会影响到实参
- 引用参数
* 引用参数与实参变量共用一个存储单元
* ref仅对其后的参数有效,不能应用于整个参数表
* 调用方法时,也用ref修饰实参变量
* 实参的类型与形参类型必须完全匹配
* 实参必须是变量,不能是常量或表
2019-01-23 11:45
标签
C#
2019-01-23 11:45
标签
C#
方法的参数、参数数组params的使用、
- 值参数(即形参)
编译器为值参数分配存储空间,然后将对应的实参的值拷贝到形参中
对形参的改变不会影响到实参
- 引用参数
* 引用参数与实参变量共用一个存储单元
* ref仅对其后的参数有效,不能应用于整个参数表
* 调用方法时,也用ref修饰实参变量
* 实参的类型与形参类型必须完全匹配
* 实参必须是变量,不能是常量或表


运算符重载
可以重载的运算符
```
一元操作符 +, -, !, ~, ++, --, true, false
二元操作符 +, -, *, /, %, &, |, ^, <<, >>, ==, !=,
>, <, >=, <=
赋值运算符 +=, -=, *=, /=, >>=, <<=, %=, &=, |=, ^=
要求同时重载的运算符
一元操作符 true和
2019-01-23 11:41
标签
C#
2019-01-23 11:41
标签
C#
运算符重载
可以重载的运算符
```
一元操作符 +, -, !, ~, ++, --, true, false
二元操作符 +, -, *, /, %, &, |, ^, <<, >>, ==, !=,
>, <, >=, <=
赋值运算符 +=, -=, *=, /=, >>=, <<=, %=, &=, |=, ^=
要求同时重载的运算符
一元操作符 true和


实例构造函数
```
[构造函数修饰符] 标识符([参数列表] )
[ : base ( [参数列表] ) ] [ : this ( [参数列表] ) ]
{
构造函数语句块
}
```
- 构造函数修饰符有public、protected、internal、private
- 构造函数可以重载
- :base表示调用直接基类中的实例构造函数
- :this调用该类本
2019-01-23 11:34
标签
C#
2019-01-23 11:34
标签
C#
实例构造函数
```
[构造函数修饰符] 标识符([参数列表] )
[ : base ( [参数列表] ) ] [ : this ( [参数列表] ) ]
{
构造函数语句块
}
```
- 构造函数修饰符有public、protected、internal、private
- 构造函数可以重载
- :base表示调用直接基类中的实例构造函数
- :this调用该类本


6、为了能向所有人报告工作,可以使用事件
把彼得的Worker类的的委托字段做成public有无意识的副作用。如果彼得的老板不耐烦了,也可以决定自己来激发彼得的委托(真是一个粗鲁的老板):
`if( peter.completed != null ) peter.completed(); `
彼得不想让这些事发生,他意识到需要给每个委托提供“注册”和“反注册”功能,这样监听者就可以自己添加和移除委
2019-01-22 10:49
标签
C#
2019-01-22 10:49
标签
C#
6、为了能向所有人报告工作,可以使用事件
把彼得的Worker类的的委托字段做成public有无意识的副作用。如果彼得的老板不耐烦了,也可以决定自己来激发彼得的委托(真是一个粗鲁的老板):
`if( peter.completed != null ) peter.completed(); `
彼得不想让这些事发生,他意识到需要给每个委托提供“注册”和“反注册”功能,这样监听者就可以自己添加和移除委

备案号:
闽ICP备19015193号-1
关闭特效