- 目录 文章目录 目录作用域局部变量全局变量 变量的生命周期 作用域 作用域是已声明标识符所表示的常量、类型、变量、函数、或包在源代码中的作用范围(有效性范围)。 注意,声明了的局部变量必须被引用,否则会触发异常。全局变量则不需要,因为编译器会考虑该全局变量是否会在其他地方被引用。 局部变量 在函数体内声明的变量称之为局部变量,它们的作用域只在... 目录 文章目录 目录作用域局部变量全局变量 变量的生命周期 作用域 作用域是已声明标识符所表示的常量、类型、变量、函数、或包在源代码中的作用范围(有效性范围)。 注意,声明了的局部变量必须被引用,否则会触发异常。全局变量则不需要,因为编译器会考虑该全局变量是否会在其他地方被引用。 局部变量 在函数体内声明的变量称之为局部变量,它们的作用域只在...
- 目录 文章目录 目录defer,panic 和 recoverpanicrecover通过 panic + recover 来简化错误处理 defer,panic 和 recover Golang 中常规的错误处理方式是直接 return error 给调用者,再由调用者决定后续的程序逻辑,或捕获、或终止、或恢复。但对于一些无法恢复的错误,返回 err... 目录 文章目录 目录defer,panic 和 recoverpanicrecover通过 panic + recover 来简化错误处理 defer,panic 和 recover Golang 中常规的错误处理方式是直接 return error 给调用者,再由调用者决定后续的程序逻辑,或捕获、或终止、或恢复。但对于一些无法恢复的错误,返回 err...
- 目录 文章目录 目录Golang 的错误处理哲学为什么 Golang 不使用异常进行错误处理?错误处理错误处理策略建议 Golang 的错误处理哲学 首先需要注意的是,错误与异常有着本质的区别。 错误(Error):作为流程的一部分,被调用方显式返回,调用方主动处理。异常(Exception):预料之外出现或者在流程中不应该出现的错误。 Golan... 目录 文章目录 目录Golang 的错误处理哲学为什么 Golang 不使用异常进行错误处理?错误处理错误处理策略建议 Golang 的错误处理哲学 首先需要注意的是,错误与异常有着本质的区别。 错误(Error):作为流程的一部分,被调用方显式返回,调用方主动处理。异常(Exception):预料之外出现或者在流程中不应该出现的错误。 Golan...
- 目录 文章目录 目录结构体访问结构体成员向函数传递结构体结构体指针结构体标签(Struct Tag) 结构体 Golang 中,结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。与 C 语言中的结构体类似,区别在于 Golang 结构体的操作更加精简,方式更加单一。同时,Golang 中结构体变量也类似于 OOP 中对象的概念,可以具有对象的... 目录 文章目录 目录结构体访问结构体成员向函数传递结构体结构体指针结构体标签(Struct Tag) 结构体 Golang 中,结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。与 C 语言中的结构体类似,区别在于 Golang 结构体的操作更加精简,方式更加单一。同时,Golang 中结构体变量也类似于 OOP 中对象的概念,可以具有对象的...
- 目录 文章目录 目录前言实体完整性(主键约束)用户定义完整性(非空约束、唯一约束、检查约束和默认值)参照完整性(外键约束)关联关系一对一、一对多关联多对多关联示例 前言 本文基于 PostgreSQL 和 GORM 1.9 版本。GORM v2 对下文中的不足进行了优化。 全新的 Migrator:允许为关系创建数据库外键,更智能的 Aut... 目录 文章目录 目录前言实体完整性(主键约束)用户定义完整性(非空约束、唯一约束、检查约束和默认值)参照完整性(外键约束)关联关系一对一、一对多关联多对多关联示例 前言 本文基于 PostgreSQL 和 GORM 1.9 版本。GORM v2 对下文中的不足进行了优化。 全新的 Migrator:允许为关系创建数据库外键,更智能的 Aut...
- 目录 : 1. 安装 Golang 2. 配置环境 3. 创建工作目录 4. 编写第一个 Golang 程序 5. 参考文献 本篇文章主要总结下 Golong 的安装、环境配置以及编写第一个程序 HelloWorld.go。 1. 安装 Golang 本文所用系统环境:CentOS Linux release 8.0.1905 (Core) ... 目录 : 1. 安装 Golang 2. 配置环境 3. 创建工作目录 4. 编写第一个 Golang 程序 5. 参考文献 本篇文章主要总结下 Golong 的安装、环境配置以及编写第一个程序 HelloWorld.go。 1. 安装 Golang 本文所用系统环境:CentOS Linux release 8.0.1905 (Core) ...
- 目录 一、源码 二、原理 2.1 实例1 2.2 实例2 2.3 实例3 我们知道 Golang 切片(slice) 在容量不足的情况下会进行扩容,扩容的原理是怎样的呢?是不是每次扩一倍?下面我们结合源码来告诉你答案。 一、源码 Version : go1.15.6 src/runtime/slice.go //go1.15.6 ... 目录 一、源码 二、原理 2.1 实例1 2.2 实例2 2.3 实例3 我们知道 Golang 切片(slice) 在容量不足的情况下会进行扩容,扩容的原理是怎样的呢?是不是每次扩一倍?下面我们结合源码来告诉你答案。 一、源码 Version : go1.15.6 src/runtime/slice.go //go1.15.6 ...
- @Author:Runsen 最近在从 Java/python 语言转型到 go 语言,本文是Go 基础系列的文章,不会刻意追求面面俱到,但该有知识点都会覆盖。 下面我们就来简单的看看 go 语言里的这些语法吧。 文章目录 变量基本类型常量 变量 Go 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字。其实这就是Python,Java编码... @Author:Runsen 最近在从 Java/python 语言转型到 go 语言,本文是Go 基础系列的文章,不会刻意追求面面俱到,但该有知识点都会覆盖。 下面我们就来简单的看看 go 语言里的这些语法吧。 文章目录 变量基本类型常量 变量 Go 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字。其实这就是Python,Java编码...
- @Author:Runsen 学习过Java,大家或多或少了解接口。接口是一种类型,它指定一个方法集,所有方法为接口类型就被认为是该接口。 文章目录 接口接口内部实现指针方法值方法空接口 接口 在Go语言中,一个接口类型总是代表着某一种类型(即所有实现它的类型)的行为。一个接口类型的声明通常会包含关键字type、类型名称、关键字interface以及由... @Author:Runsen 学习过Java,大家或多或少了解接口。接口是一种类型,它指定一个方法集,所有方法为接口类型就被认为是该接口。 文章目录 接口接口内部实现指针方法值方法空接口 接口 在Go语言中,一个接口类型总是代表着某一种类型(即所有实现它的类型)的行为。一个接口类型的声明通常会包含关键字type、类型名称、关键字interface以及由...
- @Author:Runsen 复合数据类型主要包含Go中的一些复杂类型,主要有指针类型,数组类型,切片类型,结构体类型,Map类型和Channel类型 文章目录 指针数组切片 指针 相信大家都在在C语言听过指针。首先指针是一个变量,全名叫做指针变量,只不过这个变量里面存储的值是一个地址而已。所以指针,哪怕是空指针,都是有地址的,因为变量都是有地址的。... @Author:Runsen 复合数据类型主要包含Go中的一些复杂类型,主要有指针类型,数组类型,切片类型,结构体类型,Map类型和Channel类型 文章目录 指针数组切片 指针 相信大家都在在C语言听过指针。首先指针是一个变量,全名叫做指针变量,只不过这个变量里面存储的值是一个地址而已。所以指针,哪怕是空指针,都是有地址的,因为变量都是有地址的。...
- ROS2GO之TurtleBot学习与使用资料 TurtleBot2最佳环境为indigo或kinetic,TurtleBot3最佳环境为kinetic或melodic。 ROS2GO-Kinetic版本已经配置完全,这里不在细说,直接使用官网教程学习即可。 ROS2GO-Melodic版本功能包安装无法使用,使用源码编译即... ROS2GO之TurtleBot学习与使用资料 TurtleBot2最佳环境为indigo或kinetic,TurtleBot3最佳环境为kinetic或melodic。 ROS2GO-Kinetic版本已经配置完全,这里不在细说,直接使用官网教程学习即可。 ROS2GO-Melodic版本功能包安装无法使用,使用源码编译即...
- ROS2GO+Cozmo=口袋机器人之人工智能仿真和实验平台 Cozmo语音命令(CvC) - 版本0.6.8 向Cozmo发出多个语音命令,并观察他按顺序执行所有这些命令:高度可定制,您可以轻松添加新命令。识别英语,意大利语,法语,荷兰语,但添加新语言非常容易!(同样支持中文普通话!!!) 描述 你可以说“Cozmo,向前&n... ROS2GO+Cozmo=口袋机器人之人工智能仿真和实验平台 Cozmo语音命令(CvC) - 版本0.6.8 向Cozmo发出多个语音命令,并观察他按顺序执行所有这些命令:高度可定制,您可以轻松添加新命令。识别英语,意大利语,法语,荷兰语,但添加新语言非常容易!(同样支持中文普通话!!!) 描述 你可以说“Cozmo,向前&n...
- 首先需要设置U盘启动:https://support.microsoft.com/zh-cn/help/4023511/surface-boot-surface-from-a-usb-device 如果你想更改固件设置或 Windows 启动设置,从 U 盘启动你的 Surface 可能会很有用。 从 USB 设备启动不会刷新或重置你的 Surface。相反,它让可以你使... 首先需要设置U盘启动:https://support.microsoft.com/zh-cn/help/4023511/surface-boot-surface-from-a-usb-device 如果你想更改固件设置或 Windows 启动设置,从 U 盘启动你的 Surface 可能会很有用。 从 USB 设备启动不会刷新或重置你的 Surface。相反,它让可以你使...
- @Author:Runsen 复合数据类型主要包含Go中的一些复杂类型,主要有指针类型,数组类型,切片类型,结构体类型,Map类型和Channel类型 下面,我们继续学习结构体类型,Map类型和Channel类型。 文章目录 结构体类型Map类型Channel类型 结构体类型 在C语言我们都接触过结构体,结构体是由一系列具有相同类型或不同类型的数据... @Author:Runsen 复合数据类型主要包含Go中的一些复杂类型,主要有指针类型,数组类型,切片类型,结构体类型,Map类型和Channel类型 下面,我们继续学习结构体类型,Map类型和Channel类型。 文章目录 结构体类型Map类型Channel类型 结构体类型 在C语言我们都接触过结构体,结构体是由一系列具有相同类型或不同类型的数据...
- @Author:Runsen 任何编程语言都是众所周知的面向对象编程,还有日渐流行的函数式编程,当然Go也不例外,这也是本文的重点.。我可以这么说,Go的功力深不深完全就是看函数式编程和面向对象编程。 下面,Runsen先介绍Go编程语言中的函数式编程。 文章目录 普通函数匿名函数闭包函数 Go中函数就是一类带特殊的 接收者 参数的函数。函数接收者在... @Author:Runsen 任何编程语言都是众所周知的面向对象编程,还有日渐流行的函数式编程,当然Go也不例外,这也是本文的重点.。我可以这么说,Go的功力深不深完全就是看函数式编程和面向对象编程。 下面,Runsen先介绍Go编程语言中的函数式编程。 文章目录 普通函数匿名函数闭包函数 Go中函数就是一类带特殊的 接收者 参数的函数。函数接收者在...
上滑加载中
推荐直播
-
“智见未来”数字文旅创新大赛 线上培训
2025/04/16 周三 19:30-21:00
洪洁/行业算力发展部
4月16日19:30-21:00,大赛组委会将于线上举办培训,汇聚行业专家与技术大牛,从文旅产业的前沿趋势到AI技术的深度应用,全方位为你赋能
回顾中 -
WS63E星闪开发板快速入门指南:开启星闪技术之旅
2025/05/15 周四 19:00-20:30
杨阳 华为开发者布道师
本期直播,深度解析星闪技术核心优势与开发实战技巧,分享从环境搭建到“海思智棒”优秀星闪体验官案例开发的完整路径,覆盖技术原理、场景化案例、备赛避坑指南,助力开发者快速攻克物联网项目开发难题。
回顾中 -
星闪应用开发技术课程(群)建设思路与设想
2025/05/22 周四 19:00-21:00
葛非 华为开发者布道师
华中师范大学计算机学院副教授-葛非老师将深入讲解星闪核心技术及其支撑技术,并讨论如何将这些技术融入到通信工程、计算机科学与技术、软件工程等专业的课程内容中,旨在推动高等教育领域星闪鸿蒙生态的有序发展。
即将直播
热门标签