当前位置: 首页 > news >正文

云服务器可以做网站wordpress的源代码

云服务器可以做网站,wordpress的源代码,展厅设计公司西安,图片无版权网站一. 为什么是它们三个? 拿这三者比较的原因是它们在使用的时候非常相似。你可以用它们声明的变量赋任何类型的值。 看看下面的示例: var a 1;object b 1; dynamic c 1; 你还可以使用关键字为它们赋上更加复杂的类型 var a new string[]{1};object b new …一. 为什么是它们三个? 拿这三者比较的原因是它们在使用的时候非常相似。你可以用它们声明的变量赋任何类型的值。 看看下面的示例: var a 1;object b 1; dynamic c 1; 你还可以使用关键字为它们赋上更加复杂的类型 var a new string[]{1};object b new string[]{1}; dynamic c new string[]{1}; 二. 能够任意赋值的原因 上面的例子中看起来三者非常相似但是背后的原理却是非常不同。 var是C# 3中引入的其实它仅仅只是一个语法糖. var本身并不是一种类型, 其它两者object和dynamic是类型。 var声明的变量在赋值的那一刻就已经决定了它是什么类型。 所以如果你这样使用就会有编译错误: var a 1; a Test; object之所以能够被赋值为任意类型的原因其实都知道因为所有的类型都派生自object. 所以它可以赋值为任何类型: object a 1; a Test; 那么dynamic呢? 它是C#引入的新类型它的特点是申明为dynamic类型的变量不是在编译时候确定实际类型的, 而是在运行时。 所以下面的代码是能够通过编译的但是会在运行时报错: dynamic a test; a; 上面代码内部处理的过程是怎样的呢? 首先, dynamic类型赋值为字符串test, 运行操作的时候.net会去寻找当前的赋值类型string中是否支持操作发现不支持出现异常。 所以如果这样修改一下就可以让代码正常运行起来 dynamic a test; a 1; a; 三. dynamic的用法 1 直接使用该类型可以非常方便的插入属性, 方法 static void Main(string[] args) {dynamic person new System.Dynamic.ExpandoObject();person.Name cary;person.Age 25;person.ShowDescription new Funcstring(() person.Name person.Age);Console.WriteLine(person.Name person.Age person.ShowDescription());Console.ReadLine(); } 2 枚举所有成员 foreach (var property in (IDictionaryString, Object)dynEO) {Console.WriteLine(property.Key : property.Value); } 3 简化反射 常用的处理反射的例子: object calc GetCalculator(); Type calcType calc.GetType();object res calcType.InvokeMember( Add, BindingFlags.InvokeMethod, null, new object[] { 10, 20 });int sum Convert.ToInt32(res); 使用dynamic之后: dynamic calc GetCalculator(); int sum calc.Add(10, 20); 四使用dynamic的注意事项 有了dynamic.net就以及有了动态类型的优势但是由于对于dynamic类型的所有操作都是在运行时确定的所有错误无法在编译时候出现使用的时候就需要非常小心。 因为dynamic是类型所以如果函数接受的是确定类型的参数是不能传入dynamic类型的这样会有编译错误 public int Add(int a, int b){     return a b; } dynamic test1 1; dynamic test2 2; Add(test1, test2); 下面是对上面的例子的修正谢谢AlanNet. 大家可以实验一下 #15楼 AlanNet  2014-02-04 21:30为什么我copy你最后一个例子并没有报错支持(0)反对(0)回复引用删除#16楼[楼主] JustRun  2014-02-07 08:30AlanNet应该是编译不通过我待会试试支持(0)反对(0)修改删除#17楼[楼主] JustRun  2014-02-08 08:29AlanNet是不会报错对于普通的类型int这样的不会有问题。但是如果是对象类型运行时会报错。 另外在我们自己在写函数时最好不要将dynamic类型作为函数的参数这就像是使用object作为函数参数一样会为程序的维护带来后续的麻烦。 没有人能够确定使用者传入的是什么而且编译时候不会有问题。如果错误出现在运行时就有可能是灾难。 原文地址http://www.cnblogs.com/JustRun1983/p/3163350.html .NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注
http://www.zqtcl.cn/news/240002/

相关文章:

  • php做的网站如何该样式如何卸载安装wordpress
  • 建设网站公司哪家性价比高最新推广注册app拿佣金
  • 丽水网站建设公司排名wordpress 去掉图片链接
  • 以下属于网站页面设计的原则有2345网址下载
  • 为网站的特色功能设计各种模板温州网页模板建站
  • 广州微网站建设企业网站建设网站优化推广
  • 大连模板网建站项目网络的关键路径
  • 迅雷黄冈网站推广软件徐州模板自助建站
  • 怎么做不占CPU的网站修改wordpress的登陆地址
  • 网站制作毕业设计论文软件ui设计培训机构
  • 物业网站模板哪里建设网站
  • 达州城乡建设网站手机网站 方案
  • 平台兼职网站开发许昌做网站优化
  • 婴幼儿用品网站开发意义基因网站开发
  • 自己网站页面设计软件传奇世界游戏官网
  • 淘宝网网站开发部技术部三亚私人高清影院品牌加盟
  • 网站是用什么软件做的山西网络科技有限公司
  • 汕头网站建设开发做购物网站 营业范围是什么
  • 网站建设 企业短视频运营计划书
  • 网站仿静态网站城市分站织梦系统
  • 淄博网站建设高端企业最新商业资讯
  • 百度推广太原网站建设wordpress的页面和首页一样
  • 无为网站定制php网站 mysql数据库配置文件
  • 如何利用div做网站wordpress替换百度站内搜索
  • 大德通网站建设互动营销网站
  • 网站建设与管理实训主要内容响应式网站建设智能优化
  • 佛山市企业网站建设报价网站建
  • 广州网站营销推广设计孝义网站开发
  • 新站网站如何做Seo那个网站点击率高
  • 个体做外贸的网站罗浮视窗网站建设