扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
不能吧,现在用C语言搞开发都是用在更加底层的开发中,更加底层的开发需要高运行效率,go语言的运行效率是比不上C语言的,所以go语言在这些方面还无法取代C语言。应该说是各有所长吧,go和C都有它们自己的适用环境,谁也不能取代谁。
创新互联公司,是一家集策划、设计、技术开发一体的专业互联网产品服务公司,致力于为企业信息化提供驱动力。技术团队十多年来致力于为客户提供企业网站定制,成都做手机网站。先后服务了成百上千客户,包括各类中小企业、高校、政府。 创新互联公司将利用公司在过去十多年的资源积累,力争为客户打造真正革命性的口碑产品!
不能吧,现在用c语言搞开发都是用在更加底层的开发中,更加底层的开发需要高运行效率,go语言的运行效率是比不上c语言的,所以go语言在这些方面还无法取代c语言。应该说是各有所长吧,go和c都有它们自己的适用环境,谁也不能取代谁。
C++适合本地程序的开发。Go语言适合网络程序和本地程序的开发。Go的优点:垃圾回收,语意明确,格式统一。 Go的缺点:效率目前没有C++高,但对于桌面程序而言,效率问题不大,因为硬件已经很快了。c++过于复杂了,加入很多炫技的内容。这些内容脱离了事情的本质。
最明显的就是所谓的面向对象。基于面向对象的工程如果足够大的情况下,会带来很大的耦合度,如果再加上内存管理,多线程等等。项目后期基本上没办法维护和增加功能。
关于c++的语言复杂性,你可以问知乎上的任何一位高手。没一个敢说自己精通c++。你也可以去看一下所有的c++编绎器,没有任何一个敢说自己完全实现了c++的标准。不同的编绎器之间实现细节又不同。所以功能再强大没有实用性,就失去了意义,只会制造更多的问题。
不可以,完全没有可比性。
Golang的优势是开发速度,C可以自由、精准的操控内存。
拿string类型举个栗子:
1、修改字符串:
golang:需要分配新内存,然后进行内存copy。
c:可直接修改,可realloc。
2、存一段data:
golang:使用[]byte类型,[]byte转成string需要进行内存拷贝(排除掉利用指针进行类型转换的情况)。
c:直接用char[],可读可写。
golang中为了语言的安全性,类似的这种限制有很多,牺牲了一部分性能。但golang的优势也是显而易见的,goroutine、chan都很好用,而c则需要自己进行进程、线程的管控。
Go语言自亮相以来并没有展示一个明确的方向,Google员工将Go语言称为一个“试验性语言”,称其试图融合Python等动态语言的开发速度和C或C++等编译语言的性能和安全。一位Go语言的支持者概括而言Go语言如下:简单、快速、安全、并发、快乐编程、开源;但Go语言缺乏方向以及其“集大成者”的尝试很容易会导致其学猫不成学狗也不成,沦为四不像。尽管如此,编者仍然觉得Go语言有相当大的潜力:很多开发者对它感兴趣——不仅它的最初设计者阵容强大,而且在参与修改源代码的人群中也不乏大牛级人物。这很有可能帮助Go语言找到适合自己的方向,开拓系统编程的新方向。
您好,我来为您解答: 总体上看 go 要比 c/c++ 慢2-3倍的样子. 我感觉这种对比意义不大, 因为根据解决的问题不同不同语言相差很大, 更多的时候开发效率重要性远大于运行效率. 如果我的回答没能帮助您,请继续追问。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流