zoukankan      html  css  js  c++  java
  • C# 关键字explicit(显示),implicit(隐式),类型的隐式和显式转换

      class Program
        {
            static void Main(string[] args)
            {
                Adaptee ada = new Adaptee();
                Target tar = ada;
            }
        }
    
        public class Adaptee
        {
            public int code = 1;
        }
        public class Target
        {
            private int data;
            public Target(int data)
            {
                this.data = data;
            }
    //可以进行隐式转换
    public static implicit operator Target (Adaptee ada) { return new Target(ada.code); } }

    显式转换

      class Program
        {
            static void Main(string[] args)
            {
                Adaptee ada = new Adaptee();
                Target tar = (Target)ada;
            }
        }
    
        public class Adaptee
        {
            public int code = 1;
        }
        public class Target
        {
            private int data;
            public Target(int data)
            {
                this.data = data;
            }
    //必须显示转换
    public static explicit operator Target (Adaptee ada) { return new Target(ada.code); } }
  • 相关阅读:
    [转]我们都是花栗鼠
    学习Tkinter
    彻底理解Python切片
    信息隐藏技术
    Hex棋
    web服务器一些概念
    Redis学习笔记
    Python知识总结(二)
    Python知识总结
    最小联结词组
  • 原文地址:https://www.cnblogs.com/xiaoleye/p/6822934.html
Copyright © 2011-2022 走看看