zoukankan      html  css  js  c++  java
  • 【CLR Via C#笔记】操作符重载

    System.Decimal 类型是个特殊的类型,他并不直接属于CLR IL的基本类型,而是C#语言自己定义的。(其他值类型比如System.Int32都有对应的IL类型int32)

    因此可以通过Reflector查看关于操作符重载和转换操作符的方法

    1. 操作符重载

    Code

    2. 转化操作符

    Code

    3. 实际上,上述操作符重载方法最终将编译成普通IL方法。

    c#编译器在源码中看到一个+号时,会去查看是否定义了一个op_Addition的方法(对应+操作符)并检查参数类型是否兼容。

    而对于隐式转化,将分别编译成op_Implicit的不同重载方法(overload)

    显式转化编译成op_Explicit的不同重载方法,而且是C#不支持但CLR支持的同名同参数不同返回值类型方法。

    Code
  • 相关阅读:
    [rrdtool]监控和自己主动绘图,简单的监控.md
    64位Windows操作系统中的注冊表
    (转载)正向代理与反向代理的区别
    (转载)数据库表分割技术浅析(水平分割/垂直分割/库表散列)
    JavaWeb学习总结(四十九)——简单模拟Sping MVC
    JNDI学习总结(三)——Tomcat下使用Druid配置JNDI数据源
    JNDI学习总结(二)——Tomcat下使用C3P0配置JNDI数据源
    JNDI学习总结(一)——JNDI数据源的配置
    哈佛图书馆墙上的训言
    少走弯路的10条忠告
  • 原文地址:https://www.cnblogs.com/calmzeal/p/1331489.html
Copyright © 2011-2022 走看看