开发者社区> 问答> 正文

为什么c++程序员不改用go语言?

早在GO语言第一次出现的时候,就有人说,不能想象在工作中如何使用一个没有泛型的编程语言。这是我在某处作报告的时候,知道了这种奇怪的想法。
公平的说,他只是以自己的立场发表看法,或许他真的很喜欢C++中的STL为他带来的便利。所以为了讨论的目的,我们只有把他的想法看成很肤浅表面的东西。
按照那种想法,编写一个容器,例如整型的list和字符串的map,是一种不能承受的工作量。我知道了这种奇怪的想法后,花了我很少很少的编程时间实现了这些容器,即使是使用一些没有泛型的编程语言。
但更重要的是,那种想法中把类型作为解决这一难题的方法。类型,不是多态函数,不是语言基元不是其他方法的辅助,竟然是类型。

展开
收起
a123456678 2016-03-04 09:33:06 3487 0
1 条回答
写回答
取消 提交回答
  • Go 语言不是包罗万象的。Go 并不自带很多函数,不会对每一个执行细节都有精确的控制。例如,你不会有 RAII。相反地,Go 语言有一个垃圾收集器(Garbage Collector,即GC),因此,不需要一个释放内存的函数。
    Go 语言给你的是一套强大且易于理解、易于构建的对问题解决方案。它不是一种像你用其他语言一样的快而复杂、或者说思想上有所激发的语言,但它几乎肯定会更容易编写、更易于阅读、更容易理解、更容易维护,也许还更安全。
    另一方面只能说go作者在自己的开发领域为c++程序员想象出来的,设计一门语言不是说你觉得让你自己的工作做的爽,就当做语言特性往里面塞的,也要想想看是否能用库的方式解决,有些问题无法用库解决的时候,可以加入语言特性,比如c++多重继承,在复用一个已经设计好的库,并且需要与自己的软件框架结合的时候,这时候多重继承就能够让你自己封装一个层次来复用已经写好的库。

    2019-07-17 18:51:49
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
Go语言路上踩过的坑 立即下载
gohbase :HBase go客户端 立即下载
Go构建日请求千亿级微服务实践 立即下载