golang2021函数与包(59)Go语言flag包:命令行参数解析

在编写命令行程序(工具、server)时,我们有时需要对命令参数进行解析,各种编程语言一般都会提供解析命令行参数的方法或库,以方便程序员使用。在Go语言中的  flag 包中,提供了命令行参数解析的功能。 下面我们就来看一下 flag  包可以做什么,它具有什么样的能力。

Go避坑指南:这些错误你犯过吗?

例如:输出结果:是不是很惊讶?在 out 这个 slice 中的元素都是 3。实际上很容易解释为什么会这样:在每次迭代中,我们都将 v append 到 out 切片中。

Go 新版泛型使用:80余行代码构建一个哈希表

2018 年,我使用 Go 语言实现了一个玩具性质的哈希表 ,以便学习 Go 的 map 等数据类型如何工作。这个版本只支持字符串作为 key 以及 value。

Go 语言编译过程概述

抽象语法树中的每一个节点都表示源代码中的一个元素,每一颗子树都表示一个语法元素,例如一个if else 语句,我们可以从 2 * 3 + 7 这一表达式中解析出下图所示的抽象语法树。

网络工程师的Golang之路 — Go数据类型(数组、切片)

这里可以看到我们尝试将array2的长度从3改为4,但是程序返回了错误“cannot use int{…} as type int in assignment”,提醒我们不能改变该数组长度。

深度解读Go并发原理

我们不必care这些任务在某一个时间点是否是同时执行,可能同时执行,也可能不是,我们只关心在一段时间内,哪怕是很短的时间是否执行解决了两个或两个以上任务。请记住下面这句话:Do not communicate by sharing memory;

如何使用 Go 语言搭建企业级高并发服务器?

今天,我们就带大家从 0 开始,用 Go 语言完成一个企业级服务器的开发。用于写的功能模块,通过 API 接口,当然我们的 API 不可能只有一个,所以这里肯定是 APIS。

Go xml文件处理

在开发中会常遇到xml数据序列化和反序列化,这里我们介绍go语言处理xml数据。 “encoding/xml” 包实现了一个简单的xml 1.0解析器,可以理解xml名称空间。

Go语言实现LeetCode算法:96 不同的二叉搜索树

1 题目描述给定一个整数n,求以1 … n为节点所组成的二叉搜索树(BST)共有多少种情形?例子1:输入:3输出:5释义:题目出处:https://leetcode.

Go 1.18 即将发布,这些点你值得关注

随着计划于 2022 年第一季度发布的 Go 1.18 版本,许多新功能正在等待我们。让我们编写涵盖 int 和 float32 类型的相同 min 函数