VC中的一个很奇怪的问题--关于C4244

    从VC2003到VC2005,一直有一个很奇怪的问题。
    如下的代码:
     short  s1  =   0 ;
    
short  s2  =   2 ;

    s1 
+=  s2;
    在这两个编译器的 /w4 四级警告打开的时候,就冒出以下的警告来:
warning C4244: “ += ”: 从“ int ”转换到“ short ”,可能丢失数据
    为了消除这个警,只能将 += 拆成 = 和 +,如 s1 = s1 + s2。

    终于,这个问题在VC2008消失了。

你可能感兴趣的:(VC)