博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

天轰穿C#教程之变量的申明[原创]

Posted on 2012-10-17 09:29  天轰穿  阅读(557)  评论(0编辑  收藏  举报
  申明变量和初始化的过程比喻为修房子和入住。这个过程中共涉及到三个对象,变量名、存放变量的内存空间、值。而修房子和入住这个过程中与之对应的三个对象是,房子,地址


  在C#中声明变量使用下述语法:

 

  数据类型变量标示符;//申明的语法

 

  变量标示符 = 值;//为变量初始化

 

  //第二种方式

 

  数据类型变量标示符 = 值;//申明变量的同时初始化变量

 

  例如:

 

  string name;//申明一个名为name 的string 类型的变量

 

  name="小天";    //初始化name变量

 

  //第二种方式

 

  string name1="老田";   //申明一个名为name 的string 类型的变量并初始化

 

  小天:上面实例中两种申明方式有什么不同吗?

 

  老田:其实也没有什么不同,第一种是先申明,再初始化。第二种是申明的同时就初始化。咱们将申明变量和初始化的过程比喻为修房子和入住。这个过程中共涉及到三个对象,变量名、存放变量的内存空间、值。而修房子和入住这个过程中与之对应的三个对象是,房子,地址(门牌号),和入住的人、物。这样一对应起来,就可以想象了,修房子的过程就是在内存中开辟一片空间,而申明变量名,也就是申明找到这个空间的依据就是确定门牌号。最后至于入住人或物那就相当于把值放到内存空间中。

 

   同样的道理,上面第一种方式声明了一个string变量name。编译器不会让我们使用这个变量,除非我们用一个值初始化了该变量。因为最初申明后,这只是一个空的内存空间,即使让你去也拿不到正确的值。就想你去一所明明没有人的空房子,只能吃一肚子灰一样。

 

   小天:我明白了,上面示例中第一种方式是先修房子并为房子分个门牌号,再去入住。而下面这种方式则是将分房子、定门牌和入住一次完成了。

 

   开发商修房子都可以批量的修,那申明变量是否可以一次申明N个呢?

 

   老田:可以的,但有个前提:如果在一个语句中声明和初始化了多个变量,那么所有的变量都具有相同的数据类型:

 

  int x = 10, y =20;   // 一次申明x和y两个int类型的变量

 

  要声明类型不同的变量,需要使用单独的语句。在多个变量的声明中,不能指定不同的数据类型:

 

  int x = 10;                   //申明第一个变量

 

  bool y = true;                // 申明第二个变量

 

  int x = 10, bool y = true;    // 这样就是错误的
 

  本文为天轰穿原著,转载请注明出处及作者!