quark

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

这个问题曾经在教科书上见到过,没想到自己居然遇到了。

前几天到客户那去维护程序,出现了大致如下的一段CPP代码。

        int resultValue =0;
	if (some condition)
	{
                /* other codes */
		int resultValue = /* some value */	
        }
	else
	{
                /* other codes */
		int resultValue = /* some value */
	}    
        /* use resultValue */

当时代码一跑下来,发现resultValue的值是0,仔细看了一下代码,发现在对resultValue复制的时候,声明了一个新的resultValue变量,最要命的是CPP编译器不报错。失望

当然,C#没有这个问题。

posted on 2011-08-15 13:26  QuarkZ  阅读(189)  评论(0)    收藏  举报