博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
动态类型
阅读量:6677 次
发布时间:2019-06-25

本文共 1049 字,大约阅读时间需要 3 分钟。

dynamic 关键字来定义我们的动态类型

动态类型是运行时才知道它的具体类型
dynamic是类型,但是编译时不属于CLR类型(指的int,string,bool,double等类型,运行时肯定CLR类型中一种的),它是包含了System.Dynamic.DynamicAttribute特性的System.Object类型,但与object又不一样,不一样主要体现在动态类型不会在编译时时执行显式转换

using System;using static System.Console;namespace Dynamic1{
class Program {
static void Main(string[] args) {
object obj = 10; WriteLine(obj.GetType()); //使用object类型此时需要强制类型转换,不能编译器会出现编译错误 obj = (int)obj + 10; dynamic a = 400; WriteLine(a.GetType()); // 对于动态类型而言,编译时编译器根本不知道它是什么类型, // 所以编译器就判断不了a的类型了,所以下面的代码不会出现编译时错误 // 因为a有可能是int类型,编译器不知道该变量的具体类型不能凭空推测类型 // 当然也就不能提示我们编译时错误了 a += 100; WriteLine(Add(a,a)); ReadKey(); } static dynamic Add(dynamic a,dynamic b) {
return a + b; } static Tresult AddS
(T1 left,T2 right,Func
AddMethod ) {
return AddMethod(left, right); } }}

在这里插入图片描述

转载地址:http://purxo.baihongyu.com/

你可能感兴趣的文章
make运行阶段划分
查看>>
cpio
查看>>
浅谈深度学习
查看>>
C++异常安全的赋值运算符重载 【微软面试100题 第五十五题】
查看>>
HDU 3535
查看>>
字符串指针
查看>>
ubuntu设置开机启动项
查看>>
进制与进制转换DAY2
查看>>
orcale 之 SQL 数据查询
查看>>
Unity引擎的Player Settings介绍
查看>>
Windows 更新的下载文件 保存位置
查看>>
[20180928]ora-01426(补充).txt
查看>>
[html] Doctype
查看>>
阅读笔记九
查看>>
求解形式幂级数的一阶微分方程
查看>>
life and penis
查看>>
asp.net 源码坊今日更新
查看>>
跨域,禁止调用
查看>>
hive基本操作与应用
查看>>
java 笔记(2) 接口作为引用数据类型
查看>>