用户定义的转换-大彩串口屏各组态控件详细介绍

时间:2024-06-28 03:33:30
【文件属性】:

文件名称:用户定义的转换-大彩串口屏各组态控件详细介绍

文件大小:4.46MB

文件格式:PDF

更新时间:2024-06-28 03:33:30

C#5.0 PDF C#学习

6.3 标准转换 标准转换是那些预先定义的转换,它们可以作为用户定义转换的组成部分出现。 6.3.1 标准隐式转换 下列隐式转换属于标准隐式转换:  标识转换(第 6.1.1 节)  隐式数值转换(第 0 节)  可以为 null 的隐式转换(第 6.1.4 节)  Null 文本转换(第 6.1.5 节)  隐式引用转换(第 6.1.6 节)  装箱转换(第 6.1.7 节)  隐式常量表达式转换(第 6.1.8 节)  涉及类型形参的隐式转换(第 6.1.10 节) 标准隐式转换特别排除了用户定义的隐式转换。 6.3.2 标准显式转换 标准显式转换包括所有的标准隐式转换以及一个显式转换的子集,该子集是由那些与已知的标准隐式转 换反向的转换组成的。换言之,如果存在一个从 A 类型到 B 类型的标准隐式转换,则一定存在与其对应 的两个标准显式转换(一个是从 A 类型到 B 类型,另一个是从 B 类型到 A 类型)。 6.4 用户定义的转换 C# 允许通过用户定义的转换 (user-defined conversion) 来增加预定义的隐式和显式转换。用户定义的转 换是通过在类类型和结构类型中声明转换运算符(第 10.10.3 节)而引入的。 6.4.1 允许的用户定义转换 C# 只允许声明某些用户定义的转换。具体而言,不可能重新定义已存在的隐式或显式转换。 对于给定的源类型 S 和目标类型 T,如果 S 或 T 是可以为 null 的类型,则让 S0 和 T0 引用它们的基础类 型,否则 S0 和 T0 分别等于 S 和 T。仅当以下条件皆为真时,才允许类或结构声明从源类型 S 到目标类 型 T 的转换:  S0 和 T0 是不同的类型。  S0 和 T0 中有一个是声明该运算符的类类型或结构类型。  S0 和 T0 都不是 interface-type。


网友评论