CH11.3转换

CH11.3转换

标签(空格分隔): 转换 as


目录


重载转换运算符

可以定义类型之间的隐式和显式转换。

  • 类型之间存在继承关系,转换不必多说,见[继承]以及[多态性]
  • 类型之间没有继承关系的,没有共享接口,必须要进行重载转换运算符。
    关键字:implicit explicit
public static explicit ooperator ConvClass1(ConvClass2 op1)
{
    ConvClass1 returnVal = new ConvClass1();
    checked {returnVal.val = (int)op1.val;};
    return returnVal;
}

checked关键字 C# 中对算术运算进行溢出检查或忽略溢出检查的关键字

as运算符

  1. 语法
    <operand> as <type>
  2. 适用情况
    (1). <operand>的类型是<type>
    (2). <operand>可以隐式转换为<type>类型
    (3). <operand>可以封箱为<type>类型
    注意: 如果不能转换,则表达式返回结果为 null,这样的处理,避免检查异常,只需要判断,返回的对象是否为 null即可

英文单词

implicit [im·plic·it || ɪm’plɪsɪt]
adj. 暗示的; 含蓄的; 盲从的
explicit [ex·plic·it || ɪk’splɪsɪt]
adj. 详尽的; 明确的; 清楚的; 直率的

猜你喜欢

转载自blog.csdn.net/qq_34332733/article/details/79392276