Technorati 标签: C#

转载自csdn:http://blog.csdn.net/robingaoxb/article/details/6175533

 

  1. var关键字是C# 3.0开始新增的特性,称为推断类型 .
  2. 可以赋予局部变量推断“类型”var 而不是显式类型。var 关键字指示编译器根据初始化语句右侧的表达式推断变量的类型。推断类型可以是内置类型、匿名类型、用户定义类型、.NET Framework 类库中定义的类型或任何表达式。
  3.  
  4. 上面的资料有点抽象不好理解.
    示例:
    原来我们定义变量,是要这样:
  5. 数据类型 变量名 = 值;
  6. 如:
    int a = 1;
  7. string b = "2";

  8. 也就是说,"必须先明确地"指定你的变量是什么数据类型,才能给它赋值.这点很重要,要记住才好比较.
  9. 现在在C# 3.0里,有了变化,就是可以不用像上面那样定义变量了.
    如:
  10. var a = 1;
  11. 那这个a,是什么类型呢?和原来的做法不一样了.
    奥妙就在这里,IDE或编译器会根据你给a 的值:1,来"推论,断定"a是一个整数类型.
  12. 同理:
    var b = 2";
    因为给b的值是"2"这样一个字符串,所以,b就是string类型...
  13. 又如:

  14. var是3.5新出的一个定义变量的类型
    其实也就是弱化类型的定义
    VAR可代替任何类型
    编译器会根据上下文来判断你到底是想用什么类型的

  15. 至于什么情况下用到VAR   我想就是你无法确定自己将用的是什么类型
    就可以使用VAR     类似 OBJECT
    但是效率比OBJECT高点

  16. 使用var定义变量时有以下四个特点:

  17. 1. 必须在定义时初始化。也就是必须是var s = “abcd”形式,而不能是如下形式:
    var s;
    s = “abcd”;

  18. 2. 一但初始化完成,就不能再给变量赋与初始化值类型不同的值了。

  19. 3. var要求是局部变量。

  20. 4. 使用var定义变量和object不同,它在效率上和使用强类型方式定义变量完全一样。

c#中var关键字用法的更多相关文章

  1. C#中var关键字用法分析

    原文连接 本文实例分析了C#中var关键字用法.分享给大家供大家参考.具体方法如下: C#关键字是伴随着.NET 3.5以后,伴随着匿名函数.LINQ而来, 由编译器帮我们推断具体的类型.总体来说,当 ...

  2. php中var关键字用法

    见很多朋友说在php中定义变量用不用var都没关系,其实不然. 看看例子,如果我这样使用var: 1 var $a=123; 2 echo $a; 3 //那么程序会提示语法错误,要去掉var这个变量 ...

  3. java 10 中 var关键字用法

    引用:https://mp.weixin.qq.com/s/n1tcJ0CywSi0j-YycGPwxg what java10引入了局部变量折断 var用于声明局部变量. 如var user=new ...

  4. C#中 Var关键字

    文章来源: 青水白凡 C#中 Var关键字 Var是C#3.5新增的一个关键字,用来代替某些具体的类型,由编译器自动判断变量类型,编译器可以根据变量的初始化值"推断"变量的类型. ...

  5. JavaScript中var关键字的使用详解

    作用 声明作用:如声明个变量. 语法 ? 1 var c = 1; 省略var 在javascript中,若省略var关键字而直接赋值,那么这个变量为全局变量,哪怕是在function里定义的. ? ...

  6. C#中var关键字【转】

    [转]http://blog.csdn.net/courageously/article/details/5695626 var关键字是C# 3.0开始新增的特性,称为推断类型 . 可以赋予局部变量推 ...

  7. C++中extern关键字用法小结

    总结C++中关于extern关键字的用法. 1.变量的生明和定义中 C++语言支持分离式编译机制,该机制允许将程序分割为若干个文件,每个文件可被独立编译.为了将程序分为许多文件,则需要在文件中共享代码 ...

  8. ORACLE中ESCAPE关键字用法

    ESCAPE用法 1.使用 ESCAPE 关键字定义转义符: 在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符. 2.ESCAPE 'escape_character'  允许在字符串中搜 ...

  9. C++中const关键字用法

    为什么使用const?采用符号常量写出的代码更容易维护:指针常常是边读边移动,而不是边写边移动:许多函数参数是只读不写的.const最常见用途是作为数组的界和switch分情况标号(也可以用枚举符代替 ...

随机推荐

  1. bzoj2553

    似乎挂精度了,不过这是一道好题 很明显看题知算法,知道这道题肯定是AC自动机上矩阵乘法 首先要明确一点,对一个字符串,怎样划分禁忌串最多 根据求最多不相交线段可知,从头到尾能划分出禁忌串就划分 根据这 ...

  2. easyui-lang-zh_CN.js导入后还是英文提示

    <script src="/js/easyUI1.3.3/jquery.easyui.min.js" type="text/javascript"> ...

  3. HDU-- Buy Tickets

    告知每次要插到第 i 个位置上,问最后它们的顺序是什么. 这一题,不是考线段树,是考如何想出用线段树...思维很巧妙,倒过来做的话就能确定此人所在的位置....   Buy Tickets Time ...

  4. Nido.Common.Utilities.MD5类

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Sec ...

  5. Javascript数据类型——number类型

            ECMAScript规范中使用IEEE754格式来表示整数和浮点数.支持十进制.八进制以及十六进制.有一点注意的是八进制数字在严格模式下是无效的,这可能会影响到程序的正常运行. 避免浮 ...

  6. 使用 CAS 在 Tomcat 中实现单点登录

    单点登录(Single Sign On , 简称 SSO )是目前比较流行的服务于企业业务整合的解决方案之一, SSO 使得在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.CAS ...

  7. java方法的重载

    java方法的重载 public class Person1 {    private String name; //姓名    private int age;      //年龄    priva ...

  8. 百度UEditor开发案例(JSP)

    本案例的开发环境:MyEclipse+tomcat+jdk     本案例的开发内容: 用百度编辑器发布新闻(UEditor的初始化开发部署) 编辑已发过的新闻(UEditor的应用——编辑旧文章) ...

  9. 无法打开SQL Server的连接

       机房收费系统重构版的登陆敲了好几天了,总算把登陆窗口敲完了,代码调试的差点儿相同了,问题就处在数据库了.    SQL Server配置管理里的SQL  Server服务都启动了,可是还是报这个 ...

  10. java程序员从笨鸟到菜鸟系列

    http://blog.csdn.net/csh624366188/article/category/888600