码迷,mamicode.com
首页 > Windows程序 > 详细

C# Dynamic

时间:2017-07-23 11:23:43      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:类型检查   new   code   adk   task   set   gen   stat   ons   

Dynamic 类型在可以绕过编译器的类型检查,改为在运行时解析。

例:类型A,B都有属性Name,Dodynamic的参数可以是A也可以是B,

o.Name在编译时不会报错,在运行时根据传入的参数(A或B)执行A.Name或者B.Name.

有的朋友可能会说可以让A和B实现一个借口或继承一个基类,这确实也可以,但是我现在在介绍Dynamic。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace dynamic类型
{
    class Program
    {
        static void Main(string[] args)
        {
            A a = new A();
            a.Name = "dog";
            Dodynamic(a);
            Console.ReadKey();
        }

        private static void Dodynamic(dynamic o)
        {
            Console.WriteLine(o.Name);
        }
    }
    public  class A
    {
        public string Name { set; get; }
    }
    public  class B
    {
        public string Name { set; get; }
    }
}

 

C# Dynamic

标签:类型检查   new   code   adk   task   set   gen   stat   ons   

原文地址:http://www.cnblogs.com/dog2016/p/7223857.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!