请问JAVA(C/C++)编译器是如何定位并处理未初始化的变量?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【lianglianglight】截止到2008-07-03 14:41:49的历史汇总数据(不包括此帖):
    发帖的总数量:0                        发帖的总分数:0                        
    结贴的总数量:0                        结贴的总分数:0                        
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:---------------------结分的百分比:---------------------
    无满意结贴率:---------------------无满意结分率:---------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
      

  2.   

    应该能编译吧(如果是JAVA的话)
    JAVA中的说法应该是,再使用之前必须出使化,没使用它的话,还是能通过编译的
      

  3.   

    这个过程不是编译时期的问题。
    或者说空指针时异常的范畴,也就是说:在编译期间无法获得。
    如Integer a = null;
    a.somefunc()
    是异常
      

  4.   

      将诸位老师的回复整合一下,不知这样说对不对?:
      对于JAVA尽量保证在变量使用前,通过直接赋值、构造器、实例化、默认等方式对变量初始化。没使用该变量时代码不仅能编译,还能运行;否则以异常错误的方式提示。
      由于这个过程不是编译时期的问题,或者说空指针时异常的范畴,所以在编译期间无法对未初始化的变量定位或处理。