go安装
第一步:去这个网站下载安装包https://go.dev/dl/
第二步:把文件放在Linux服务器上后执行下面命令,注意你下载的包的名字
[root@centos ~]# tar -C /usr/local -xzf go1.22.3.linux-amd64.tar.gz
第三步:环境变量
[root@centos ~]# vim /etc/profile
在文件的末尾添加上export PATH=$PATH:/usr/local/go/bin
[root@centos ~]# source /etc/profile
第四步:测试
[root@centos ~]# vim test.go
[root@centos ~]# go run test.go
Hello, World!
[root@centos ~]# go version
go version go1.22.3 linux/amd64
其中test.go是以下代码
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
变量和数据结构
基本类型变量
//Go语言
var num int = 10
var pi float64 = 3.14
var index bool = true
var str string = "Hello,World"
//C++
int num = 10;
double pi = 3.14;
bool index = true;
string str = "Hello,World"
写多了C++总想去写个分号在末尾
类型和名字怎么是反过来的
复合类型变量
//Go语言
var arr [5]int = [5]int{1,2,3,4,5}
var slice[]int = []int{1,2,3,4,5}
var mymap map[string]int = map[string]int{"a":1,"b":2}
var mystruct struct{Name string;Age int} = struct{Name string;Age int}{"Json",30}
//C++
int arr[5] = {1, 2, 3, 4, 5};
vector<int> vec = {1, 2, 3, 4, 5};
map<string, int> mapVar = {{"a", 1}, {"b", 2}};
struct MyStruct { string Name; int Age; };
指针
// Go语言
var ptr *int = &num
// C++
int* ptr = #
函数指针
// Go语言
var funcVar func(int) int = func(x int)int {return x*x}
// C++
int square(int x) { return x * x; }
int (*funcVar)(int) = square;