为何某些公司不允许使用 C++ STL?

最初开始禁用 C++ STL,更多地是早期项目编码实践中留下的惯例,被后来的程序员继承下来。老项目中这种选择尤其地多。不过如果有人将其上升到公司行为在不同项目中全面禁用 STL,则没有必要,而且我倾向于做这种决定的人并不理解 C++ 编译系统。

 

一般来说,项目中禁止用 C++ 多见于两种具体场景:或者项目的产出产品为函数库或者需要引用第三方函数库。常见的是会限制STL的某些容器使用,因为有些容器的操作线程不安全,内存管理也不高效。

但是要是完全禁止STL,也无意义因噎废食。STL包罗的东西很多除了容器还有算法、函数对象等。算法是相当方便的轮子,佩服STL的作者Alex Stepanov,将复杂、相似的问题用算法、迭代器、函数对象这种抽象来解决。

游戏后端不用stl是祖传代码留下来的陋习,最开始服务端代码上来就申请一大块共享内存,重载new,用pod方式存放有限玩家数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值