ICode9

精准搜索请尝试: 精确搜索
  • [Go] Error2022-09-06 03:02:46

    package main import ( "errors" "fmt" "strings" ) func shouldGreaterThanTen(num int) error { if num < 10 { return errors.New("Number is less than 10") } return nil // should return nil if no error } fu

  • [Go] Defer, panic, recover2022-09-06 03:02:15

    package main import ( "fmt" ) func recoverFromPanic() { fmt.Println("defer") } func doThings() { defer recoverFromPanic() for i := 0; i < 5; i++ { fmt.Println(i) if i == 2 { panic("NOT 2") // If there is a pa

  • [Go] Method2022-09-06 03:01:46

    // User type User struct { ID int FirstName string } // Method func (u *User) describe() string { desc := fmt.Sprintf("Name %s", u.FirstName) return desc } // Order: // 0 1 2 defer panic: NOT 2 func main() { user := User{FirstName:

  • [Go] Pointer2022-09-06 02:02:13

    var name string var namePointer *string // Pointer name = "Beyonce" namePointer = &name // Assign a Pointer fmt.Println("Name: ", name) fmt.Println("Name *: ", *namePointer) // Need to add * to get value

  • Go 执行命令行并实时打印输出2022-09-05 22:02:58

    golang可以获取命令执行的输出结果,但要执行完才能够获取。 如果执行的命令是ssh,我们要实时获取,并执行相应的操作呢? 见:https://blog.csdn.net/universsky2015/article/details/125499338

  • 彩虹女神跃长空,Go语言进阶之Go语言高性能Web框架Iris项目实战-项目结构优化EP052022-09-05 21:04:04

    前文再续,上一回我们完成了用户管理模块的CURD(增删改查)功能,功能层面,无甚大观,但有一个结构性的缺陷显而易见,那就是项目结构过度耦合,项目的耦合性(Coupling),也叫耦合度,进而言之,模块之间的关系,是对项目结构中各模块间相互联系紧密程度的一种量化。耦合的强弱取决于模块间调用的复杂

  • [Go] Package2022-09-05 15:02:42

    Create a new folder utilswith a new file math.go package utils import ( "fmt" ) func printNum(num int) { fmt.Println("Current number is: ", num) } // Add multi int number together return total int func Add(nums ...int) int {

  • golang中读取配置文件的包go-ini/ini2022-09-05 11:03:44

    思考 首先,在一个初始项目开始前,大家都要思考一下 各种程序配置,写在代码中好吗? API的错误码硬编在程序中,合适吗? DB句柄谁都去open,好吗? 获取分页等公共参数,不统一管理起来,好吗? 显然在较正规的项目中,这些问题的答案都是不可以 [https://github.com/go-ini/ini](https://github.com/go

  • 记录一次go打印金字塔,空心金字塔2022-09-05 01:31:13

    金字塔 package main import "fmt" // 案例说明: 用户输入金字塔高度,打印金字塔 func main() { //思路整理: // 需要获得的数据 // 1.获得金字塔高度 // 2.获得前面空白符数量,观察金字塔得出,最上面一行金字塔高度为: 高度 -1 ,每向下一行 -1 // 3.星号:

  • [Go] switch - fallthrough2022-09-04 16:32:03

    fallthrough keyword is used in switch statement in golang. This keyword is used in switch case block. If the fallthrough keyword is present in the case block, then it will transfer control to the next case even though the current case might have matched.

  • [Go] Types - Reflect.TypeOf()2022-09-04 16:00:42

    Can use reflect.TypeOf to get variable type package main import ( "fmt" "reflect" ) func main() { // var age int = 21 // var b bool = age >= 23 var age = 21 var b = age >= 23 fmt.Println(reflect.TypeOf(age))

  • go delve远程调试2022-09-04 10:34:09

    先在服务器上安装go-delve go-delve的github地址:https://github.com/go-delve 在服务器上安装好go语言的环境,然后在服务器上安装go-delve go install github.com/go-delve/delve/cmd/dlv@latest 以服务器api做示例,示例代码如下,将代码文件上传到服务器 package main import

  • 学习 Go,一段旅程:标准库包和并发 #52022-09-04 01:35:36

    学习 Go,一段旅程:标准库包和并发 #5 大家好!很高兴再次见到你,我希望你做得很好。在本文中,我想分享我在学习 Go 编程语言方面的进展。本周,我了解了标准库包和并发。 标准库包 我们已经了解了基本的 Go 编程语言,现在我们将学习如何将我们的代码集成到标准库包中,例如 JSON、sort 和 bc

  • Golang基础-22022-09-03 10:31:30

    Golang基础2 指针 如果声明变量var x int ,则&x是获取x值所在的地址,类型是整型指针(*int),即我们可以声明一个变量来接收其返回值 var p *int=&x 那么p就是一个指针变量 age:=18 // 这里是输出i变量对应的地址通过&+名字获取 fmt.Println(&age) 这里我们要得到通过ptr指针

  • channel补充2022-09-02 22:35:25

    1. channel 1.1 channel的使用 例子:主go程发数据,子go程收数据。 package main import ( "fmt" "time" ) //主go程发数据,子go程收数据 func chanDemo() { c := make(chan int) go func() { for { fmt.Println(<-c)//不断的向信道获取数据,主go程

  • 开源IM项目OpenIM单聊及万人群压测报告2022-09-02 21:31:55

    单聊压测结论: 华为云主机s3一台:8核16G内存,网络带宽10Mb,普通磁盘(非SSD) 同时在线及压测客户端数量:1万 每秒钟发送消息量:2300条; 从发送到对方接收平均消息延时:5秒 群聊压测结论: 华为云主机s3一台:8核16G内存,网络带宽10Mb,普通磁盘(非SSD) 群规模:1万人 同时在线人数:1千人 每秒发送消息量:50

  • Go 语言入门 1-管道的特性及实现原理2022-09-01 15:03:23

    入坑 go 也快一年了,从今天开始会定期分享一下 Go 语言学习过程中的一些基础知识。   go 语言中的管道, 主要是用于协程之间的通信, 比 UNIX 的管道更加轻量和易用。   我们先看一下管道的数据结构:   type hchan struct {  gcount   uint  // 环形队列剩余元素个数  dat

  • 英语2022-09-01 08:33:49

    最常用的25个英语形容词: good(好的)new(新的) first(最初的)last(最后的) long(长的)great(伟大的) little(娇小的)own(自己的 ) other(其他的)old(老的) right(正确的)big(大的) high(高的)different(不同的) small(小的)large(大规模的)next(次于的) early(早期的)young(年轻

  • Go 网络编程2022-09-01 01:02:34

    互联网协议 前言 现在我们几乎每天都在使用互联网,我们前面已经学习了如何编写Go语言程序,但是如何才能让我们的程序通过网络互相通信呢?本章我们就一起来学习下Go语言中的网络编程。 关于网络编程其实是一个很庞大的领域,本文只是简单的演示了如何使用net包进行TCP和UDP通信。如需了

  • 在ubuntu 上安装golang2022-08-31 22:32:28

    https://golang.google.cn/dl/ 方式一 下载安装包 wget https://golang.google.cn/dl/go1.19.linux-amd64.tar.gz 解压到文件夹下 sudo tar -xvzf go1.19.linux-amd64.tar.gz -C /usr/local/ 编译配置环境变量 sudo nano ~/.bashrc export GOPATH=/home/zic/gopath export G

  • 【字符串】#2938. [Poi2000]病毒2022-08-31 18:30:26

    分析 不难想到使用 Trie 图来模拟匹配的过程。 那么要求的就等价于:判断是否可以从 Trie 图的根节点 \(0\) 出发不经过非法节点找到一个环。 而非法节点则等价于:插入的模式串在 Trie 中对应的叶子节点 \(t\)、满足 \(fail[u]=t\) 的所有节点 \(u\)。 最后使用一遍 \(\texttt{dfs}\)

  • go语言流程控制2022-08-31 17:02:26

    go语言分支结构 if特殊写法: if err := Connect(); err != nil { fmt.Println(err) return } Connect 是一个带有返回值的函数,err:=Connect() 是一个语句,执行 Connect 后,将错误保存到 err 变量中。 err != nil 才是 if 的判断表达式,当 err 不为空时,打印错误并返回。 这种

  • 因势而变,因时而动,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang泛型(generic)的使用EP152022-08-31 07:00:32

    事实上,泛型才是Go lang1.18最具特色的所在,但为什么我们一定要拖到后面才去探讨泛型?类比的话,我们可以想象一下给小学一年级的学生讲王勃的千古名篇《滕王阁序》,小学生有多大的概率可以理解作者的青云之志以及壮志难酬的愤懑心情?恐怕很难罢,是的,如果对Go lang的强类型语法没有一段时

  • 另一种语言2022-08-31 03:35:06

    另一种语言 作者:Marek Cermak,后端 Go Lead @ STRV 听说过这种新的包罗万象的编程语言吗?一种易于学习、快速编译、高性能和多平台的语言,并且是我们需要的最后一种语言?好吧,那么请告诉我它是哪一个,因为我还没有听说过。我只是来谈论 Go 的。 尽管 Go 不是一种可以取代所有其他语言

  • 大道如青天,协程来通信,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang通道channel的使用EP142022-08-30 19:01:53

    众所周知,Go lang的作用域相对严格,数据之间的通信往往要依靠参数的传递,但如果想在多个协程任务中间做数据通信,就需要通道(channel)的参与,我们可以把数据封装成一个对象,然后把这个对象的指针传入某个通道变量中,另外一个协程从这个通道中读出变量的指针,并处理其指向的内存对象。 通道的

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有