Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
3个月前关闭。
Improve this question
为了提高游戏编程的效率,一些程序员不信任几种C++功能。我的一位 friend 声称了解游戏行业的运作方式,并提出以下意见:
不要使用智能指针。游戏中没有人这样做。 出于内存和速度的考虑,不应(并且通常不)在游戏编程中使用异常。
这些陈述中有多少是正确的?设计C++功能时要牢记效率。这样的效率不足以进行游戏编程吗?对于97%的游戏编程?
C思维方式似乎仍然对游戏开发社区有很好的了解。这是真的?
我观看了另一段GDC 2009中有关多核编程的演讲视频。他的演讲几乎完全针对单元编程,即在处理之前需要DMA传输(简单的指针访问不适用于Cell的SPE)。他不鼓励使用多态,因为对于DMA传输,指针必须“重新基于”指针。多么悲伤。就像回到广场上一样。我不知道是否有一种优雅的解决方案可以在Cell上编程C++多态性。 DMA传输的主题深奥,在此我没有太多背景。
我同意,C++对于希望使用一种小语言而不阅读大量书籍的程序员也不太好。模板也使调试感到恐惧。您是否同意游戏社区过于担心C++?
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
3个月前关闭。
Improve this question
为了提高游戏编程的效率,一些程序员不信任几种C++功能。我的一位 friend 声称了解游戏行业的运作方式,并提出以下意见:
这些陈述中有多少是正确的?设计C++功能时要牢记效率。这样的效率不足以进行游戏编程吗?对于97%的游戏编程?
C思维方式似乎仍然对游戏开发社区有很好的了解。这是真的?
我观看了另一段GDC 2009中有关多核编程的演讲视频。他的演讲几乎完全针对单元编程,即在处理之前需要DMA传输(简单的指针访问不适用于Cell的SPE)。他不鼓励使用多态,因为对于DMA传输,指针必须“重新基于”指针。多么悲伤。就像回到广场上一样。我不知道是否有一种优雅的解决方案可以在Cell上编程C++多态性。 DMA传输的主题深奥,在此我没有太多背景。
我同意,C++对于希望使用一种小语言而不阅读大量书籍的程序员也不太好。模板也使调试感到恐惧。您是否同意游戏社区过于担心C++?
最佳答案
瞧,您听到的任何人所说的关于编程效率的大部分内容都是神奇的思考和迷信。智能指针确实会降低性能。尤其是如果您在内部循环中进行大量精美的指针操作,可能会有所作为。
也许。
但是,当人们说这样的话时,通常是某人很久以前告诉他们X是真实的,其背后只有直觉的结果。现在,“单元格/多态性”问题听起来似乎很合理-我敢打赌,第一个说这句话的人确实做到了。但是我还没有验证。
您会听到关于操作系统C++的相同说法:它太慢了,它做了您想做的事情,非常糟糕。
尽管如此,我们还是完全用C++构建OS/400(从v3r6开始),裸机运行,并获得了快速,高效和小巧的代码库。花了一些功夫;特别是在裸机上工作时,会遇到一些引导问题,使用新的放置之类的问题。
C++可能是一个问题,仅仅是因为它太大了:我现在正在重读Stroustrup的腕上护腕,这非常令人生畏。但是我不认为有任何内在因素表明不能在游戏编程中有效使用C++。
关于c++ - C++用于游戏编程-爱还是不信任? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/829656/