jokercsj 2017-06-12 12:20 采纳率: 0%
浏览 773
已结题

C#类型转换的路径编译器是如何选择的

比如

public class Sample
{
   static public implicit operator uint(Sample value)
   {
     return 0;
     }
     static public implicit operator long(Sample value)
     {
         return 5;
     }
}

在外部调用WriteLine(new Sample())时,是输出0还是5呢?
确实编译一下就知道结果,但是编译器是如何做出选择的?
求助,能发我一下MSDN的文档网址就可以,我不知道关键词是什么没搜到。

  • 写回答

1条回答 默认 最新

  • Yentre 2017-06-20 09:32
    关注

    你new Sample的时候必须要给定实例对象,你给的如果是uint它就会返回0 你给long就会返回5 这是个很严谨的闭环逻辑啊

    评论

报告相同问题?

悬赏问题

  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)
  • ¥20 matlab yalmip kkt 双层优化问题
  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入