源代码如下: #include
void main() { if("join" == "join") cout << "equal/n"; else cout << "not equal/n"; } 在大家看来,这个简单的程序输出结果应该是not equal,但是如果在VC++6.0下编译一下,你就会惊奇的发现其实输出的结果是equal.本人也编译过多次,确实输出是equal,上网问一下,说是因为编译器的一个优化,也就是把相同值的常量放在了一个地址里了
VC++6.0的一个优化
最新推荐文章于 2020-12-04 23:44:41 发布