zoukankan      html  css  js  c++  java
  • 【C#4.0】中的dynamic与var的区别

    注意:var与dynamic这两个关键字,只是看起来很相 似,仅此而已!


    var表示“变量的类型是在编译时决定的”,但是dynamic表 示“变量的类型是在运行时决定的”。因此,dynamicvar具有截然不同的含义。
    var让 你在初始化变量时少输入一些字,编译器会根据右值来推断出变量的类型。dynamic更厉害,它告诉编译器,根本就别理究竟是啥类型,运行 时再推断不迟。
    var只能用于局部变量的定义,你不能把类的属性定义成 var,也不能把方法的返回值类型或者是参 数类型定义成vardynamic就没有这些局限了。
    dynamic类型并没有跳过类型校验,只是 延迟到了运行时。如果在运行时,检测到类型不兼容,照样会抛出异常。

    你可能在以下情况下使用dynamic
    1.COM对象
    2.动态语言(如IronPython,IronRuby等)对象
    3.反射对象
    4.C# 4.0中动态创建的对象

  • 相关阅读:
    sshpass做秘钥分发,ansible做自动化运维工具
    Day7 面向对象和类的介绍
    R-aggregate()
    R-seq()
    R-ts()
    R-ets()
    python-无联网情况下安装skt-learn
    python-线性回归预测
    python-matplotlib-ERROR
    python-pyhs2
  • 原文地址:https://www.cnblogs.com/lizhao/p/1990455.html
Copyright © 2011-2022 走看看