我已经很多年没有用 C++ 编写代码了。我最近发现,在那些年里,情况发生了很大的变化。我不确定我是否喜欢这些变化,但那是另一个讨论了。
我的硬盘上仍然有一些 C++ 代码。如果我把它拿出来并尝试用一个很好的新 C++ 编译器(比如最新版本的 g++)来编译它,它会编译吗?没有警告(假设之前编译时没有警告)?
最近,我确实开始接触一些 VC++ 2010,发现一些我期望能工作的东西却不起作用,并且当我尝试使用 NULL 时,根据上下文收到了不同的消息。但在该代码的一部分中,我使用了 NULL,甚至没有发出警告。
这取决于。通常较新的编译器更符合标准,因此在早期编译器上编译的许多结构现在无法在不修复的情况下编译。例如:
for( int i = 0; ... );
i++;
在 Visual C++ 7 中编译,但不在 Visual C++ 9 中编译。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)