我在写托管代码方面有相当丰富的经验(即C#.net和Java),但我一直想熟练掌握非托管的C/C++(因为我想在几年后毕业时从事视频游戏开发)。然而,在我试图转换时,我发现在C/C++中我本来认为很简单的事情(比如获取数组的长度)变得令人沮丧地困难。所以,我想知道是否有任何好的资源(最好是免费的,最好是在线的),可以帮助一个熟悉托管程序员转向非托管代码。任何建议都将不胜感激!
我在写托管代码方面有相当丰富的经验(即C#.net和Java),但我一直想熟练掌握非托管的C/C++(因为我想在几年后毕业时从事视频游戏开发)。然而,在我试图转换时,我发现在C/C++中我本来认为很简单的事情(比如获取数组的长度)变得令人沮丧地困难。所以,我想知道是否有任何好的资源(最好是免费的,最好是在线的),可以帮助一个熟悉托管程序员转向非托管代码。任何建议都将不胜感激!
我更喜欢尝试实验性的学习方式,所以我建议你尝试使用半条命2源引擎编写一些模组。那里有很多文档和一个相当大的社区,当你遇到问题时可以寻求帮助。
此外,在开始之前,我建议你先了解垃圾回收器的工作原理;因为现在你将不再处于托管环境中,需要自己来完成垃圾回收器的工作。花些时间研究这个问题,因为大多数其他托管环境之间的差异会在你编码时变得清晰明了,但缺少垃圾回收器并不是那么明显,可能会导致你编写看起来不错但运行效果很差的代码。
另外,你还应该研究STL。你可以在cplusplus.com上找到很多相关文档。此外,这里还有一份简短而精练的C++教程。