1 Star 0 Fork 28

AI / advanced-go-programming-book

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
ch2-12-faq.md 1.12 KB
一键复制 编辑 原始数据 按行查看 历史
chai2010 提交于 2018-04-23 13:21 . 重新调整cgo目录结构

2.12. 补充说明

为何要话费巨大的精力学习CGO是一个问题。任何技术和语言都有它自身的优点和不足,Go语言不是银弹,它无法解决全部问题。而通过CGO可以继承C/C++将近半个世纪的软件遗产,通过CGO可以用Go给其它系统写C接口的共享库,通过CGO技术可以让Go语言编写的代码可以很好地融入现有的软件生态——而现在的软件正式建立在C/C++语言之上的。因此说CGO是一个保底的后备技术,它是Go的一个重量级的替补技术,值得任何一个严肃的Go语言开发人员学习。

本章讨论了CGO的一些常见用法,并给出相关的例子。关于CGO有几点补充:如果有纯Go的解决方法就不要使用CGO;CGO中涉及的C和C++构建问题非常繁琐;CGO有一定的限制无法实现解决全部的问题;不要试图越过CGO的一些限制。而且CGO只是一种官方提供并推荐的Go语言和C/C++交互的方法。如果是使用的gccgo的版本,可以通过gccgo的方式实现Go和C/C++的交互。同时SWIG也是一种选择,并对C++诸多特性提供了支持。

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/xiaoyangge/advanced-go-programming-book.git
git@gitee.com:xiaoyangge/advanced-go-programming-book.git
xiaoyangge
advanced-go-programming-book
advanced-go-programming-book
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891