为什么游戏引擎大多选择使用 C++ 而不是 C 开发?

C++相比C在代码可维护性上有显著优势,尤其在大型项目中,其高抽象能力和丰富的特性使代码更易管理和优化。尽管C++复杂且可能导致错误,但在游戏开发中,它支持工业化标准,提供深度优化空间,并有利于团队协作,因此被育碧等大公司广泛采用。
摘要由CSDN通过智能技术生成
                                                                                                     

作者:crazybie
链接:https://www.zhihu.com/question/26591038/answer/89407866
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

在育碧干这么些年,我也来顺便说一下。先说说几个案例吧

1 id soft是业界知名的游戏先驱,在前几代游戏开发上几乎全部都是纯C(doom系列等等),卡尔马克是3D图形界响当当的明星。最近几代也开始转C++。他的回答是,C++是很容易写出丑陋的代码,但是C++用的好的话能写出更漂亮的代码。

2 开源软件的基石GCC编译器从3.2左右开始转C++实现。转之前的状态已经是用尽各种技巧,代码非常复杂,普通开发人员难以方便的贡献代码,整体进度很缓慢的程度。他们选择C++的理由是,C++能让代码更干净,可读性和维护性更好。Clang编译器一开始就是用C++开发。

3 linus骂C++大家都知道吧。其实人家骂是因为当时C++编译器很不成熟生成的代码不适合跑操作系统。人家后来是站出来澄清过。前段时间做git客户端他还是选了C++和qt。

这几个例子其实说明一点:
代码可维护性上,好的C++代码是远远大于好的C代码的,C++代码可以更干净。

因为C语言真的很优秀,跨平台,速度快,工业化就这几点这

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值