Golang使用go build 进行条件编译
当我们编写的go代码依赖特定平台或者cpu架构的时候,我们需要给出不同的实现 C语言有预处理器,可以通过宏或者#define包含特定平台指定的代码进行编译 但是Go没有预处理器,他是通过 go/build包 里定义的tags和命名约定来让Go的包可以管理不同平台的代码 这篇文章将讲述Go的条件编译系统是如何实现的,并且通过实例来… 阅读更多 »Golang使用go build 进行条件编译
当我们编写的go代码依赖特定平台或者cpu架构的时候,我们需要给出不同的实现 C语言有预处理器,可以通过宏或者#define包含特定平台指定的代码进行编译 但是Go没有预处理器,他是通过 go/build包 里定义的tags和命名约定来让Go的包可以管理不同平台的代码 这篇文章将讲述Go的条件编译系统是如何实现的,并且通过实例来… 阅读更多 »Golang使用go build 进行条件编译
1. 什么场合会使用Go与C的互操作呢? 下面的地址给出这样的答案:http://tonybai.com/2012/09/26/interoperability-between-go-and-c/ 提升局部代码性能时,用C替换一些Go代码。C之于Go,好比汇编之于C。 嫌Go内存GC性能不足,自己手动管理应用内存。 实现一些库的… 阅读更多 »Go语言学习之CGO(转载)
Go中命名为internal的package,只有该package的父级package才可以访问该package的内容。 例如,一个包的路径…/a/b/c/internal/d/e/f只能被…/a/b/c的代码层级包引入,不能被…/a/b/g或其他的任意目录引用; [官方参考文档] : https://golang.… 阅读更多 »Golang internal内部包
1. 模板渲染 Golang为模板操作提供了丰富的支持,嵌套模板、导入函数、表示变量、迭代数据等都很简单。若需要比CSV数据格式更复杂的电脑关系,模板可能是一个不错的解决方案。模板的另一个 应用是网站的页面渲染。 Golang内置text/template和html/template两个模板库,html/template库为HT… 阅读更多 »Golang模板解析和渲染
1. 一个 RESTful API 框架需要什么? 从应用程序开发的角度来看,RESTful API 的本质是一个 Web Application,而 RESTful API 框架就是实现这个 Web Application 所封装的一些列工具库,使开发者可以忽略底层实现的复杂度,专注以自身 Application 的逻辑设计。… 阅读更多 »Golang go-restful框架(转载)
在vs code中使用go 1.15模块智能加载显示代码时,存在问题,可能是兼容性或其他问题。通过升级golang到1.16以上,可以实现VS code自动加载的正常使用。 1. yum 安装的版本比较低,卸载掉 go version yum remove go 2. 下载,安装 https://golang.org/dl/ 选… 阅读更多 »Golang 在linux升级版本
1. 继承和组合的区别 继承 如果一个struct嵌套了另一个匿名结构体,那么这个结构可以直接访问匿名结构体的方法,从而实现继承 组合 如果一个struct嵌套了另一个【有名】的结构体,那么这个模式叫做组合 多重继承 如果一个struct嵌套了多个匿名结构体,那么这个结构可以直接访问多个匿名结构体的方法,从而实现多重继承 2. … 阅读更多 »Golang类继承