请问有关string 变量初始化的问题
c#   编译器需要用某个初始值对变量进行初始化,之后才能在操作中引用该变量 
 但是这段代码: 
 using   System;   
 namespace   Wrox.ProCSharp.Basics 
 { 
             class   MyFirstCSharpClass 
             {                           
                         static   void   Main() 
                         { 
                                     string   ttt; 
                                     ttt   =   Console.ReadLine(); 
                                     Console.WriteLine(ttt); 
                                     Console.ReadLine(); 
                                     return; 
                         } 
             } 
 }   
 其中仅仅声明了string   引用ttt   ,并没有用new初始化string对象 
 为何也能通过呢?? 
------解决方案--------------------ttt = Console.ReadLine(); 
 这不就赋值了么 自动初始化 
 等价于 
 string tt; 
 tt= "hello ";
------解决方案--------------------sorry! 
 我是说错了,string类型的默认是null,而不是 " ",只有值类型的才有默认的值,比如int默认为0.   
 我没有说错的是如果string没有用变量初始化也是有值的,不过值是null.