首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

2021年,“带”制作游戏竟还用这个古老的语言。不是要被取代了吗

C和C ++哪个更难?与诸如Python或Java的高级语言相比,C的难易程度如何?它对于AAA游戏编码是否像C ++一样好?

C或C ++哪个更难?

C和C ++相似,C ++非常像C的超集。如果您想进行面向对象的编程,则C ++具有OO功能,因此操作起来更容易。

与诸如Python或Java的高级语言相比,C有多难?

它是这样的:

C编译为机器语言。 C ++也是如此。 C ++曾经(比C)慢一些,但现在已经不复存在了。今天的C没有速度优势。

C并不是很复杂,但是对于大型应用程序而言,它的伸缩性并不理想。这就是OO的帮助。这就是Bjarne Stroustrup发明C ++的原因。他塞进了C缺乏的一堆OO优缺点。

尽管如此,C ++用户想要的是C ++仍然缺少的更多OO工具和功能。他们想使其与以前的C ++版本兼容。但是这使事情变得很复杂。

如果您从1990年代开始使用C ++,通常这不是问题。这些变化是渐进的。但是,如果您从一开始就跳入现在的C ++,那可能会令人生畏。

C与高级语言相比如何?

就像我说过的,C语言在语法方面还算不错,而且大多数现代语言都借用了C语言的语法。问题在于C缺少任何OO工具,因此您无法轻松地使用它进行OO编程。当应用程序变得更大时,例如AAA游戏,OO确实会有所帮助。

高级语言的问题在于它们的运行速度较慢。就比如Java通常会比C或C ++慢。尽管对于许多应用程序而言,它可能不是很明显,但对于游戏而言,它却是显而易见的。通常,您肯定希望游戏尽快执行。

您不会使用Java和C#来提高速度。尽管它们速度也比较快,但它们具有自动垃圾收集功能(这是一种内存管理功能),这可能会导致执行中意外的或意外的停止:这在游戏中不利。

而且,Python和Java需要虚拟机或特殊的执行环境才能运行。 Python需要Python虚拟环境,而Java需要Java虚拟机(JVM)。并非所有用户都有这些,这导致必须安装它们才能玩使用它们的游戏。

C(和C ++)没有此限制。它们被编译成机器语言,通常不需要任何额外的东西。

C / C ++ =快速=良好

Java / C#=较慢=较差

Python =更慢=更差

它对于AAA游戏编码是否像C ++一样好?

如上所述,他不是不行,但是很难。 1980年代的许多游戏都是用C语言编写的,但是那早于AAA游戏。况且今天您确实需要OO,特别是对于AAA游戏。用C建立和维护代码库要比用C ++编写代码难得多。

事实更是如此,因为大多数游戏工具,库和引擎都是用C ++编写的。因此,无论您是否喜欢它,都必须使用一些C ++。

因此,对于AAA游戏而言,C ++仍然是您的最佳选择。如果您已经知道Java或C#,那么学习C ++并不是一个坏的选择。即便从头开始学习它可能会有点难度。

C ++也许不是最简单的方法,但如今,它已成为AAA称号的最佳工具。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210422A08K4A00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

相关快讯

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券