zoukankan      html  css  js  c++  java
  • C# 隐式转换

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Dog dog1 = new Dog("jack");
                dog1.ShowName();
                // 使用隐式转换
                Cat cat1 = dog1;
                cat1.ShowName();
                // 使用显式转换
                Dog dog2 = (Dog)cat1;
                dog2.ShowName();
            }
        }
        public class Dog
        {
            private string Name;
            public Dog(string dname)
            {
                Name = dname;
            }
            public void ShowName()
            {
                Console.WriteLine("这是一条狗:{0}", Name);
            }
            // 隐式转换,将狗的类转换为猫的类
            public static implicit operator Cat(Dog dog)
            {
                return new Cat(dog.Name);
            }
        }
        public class Cat
        {
            private string Cname;
            public Cat(string cname)
            {
                Cname = cname;
            }
            public void ShowName()
            {
                Console.WriteLine("这是一条猫:{0}", Cname);
            }
            // 显式转换
            public static explicit operator Dog(Cat cat)
            {
                return new Dog(cat.Cname);
            }
        }
    }
  • 相关阅读:
    MZOJ #72 数字
    MZOJ #71 maple做数学题
    MZOJ #70 FFF团
    luogu 2051 [AHOI2009]中国象棋
    uva 280
    uva 260
    文件的基本处理
    文件的基础
    Turtle库
    π的计算
  • 原文地址:https://www.cnblogs.com/namejr/p/10269333.html
Copyright © 2011-2022 走看看