天天看點

go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例

一、生成文檔指令

檢視文檔指令

go doc
           

生成文檔指令

godoc -http :6060
           

幫助指令

go help doc 
           

二、生成示例代碼

1. 示例檔案名必須以_test結尾
	1. 如:stack_test
2. 示例函數必須以Example開頭
	1. 如:ExampleStack_Pop
		1. 表示Stack的Pop函數的示例
3. 示例輸入必須使用:
	1. // Output:
4. 可以使用go test指令執行示例檔案
           

三、錯誤處理

3.1、‘godoc’ 不是内部或外部指令,也不是可運作的程式

go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例

解決辦法

go get golang.org/x/tools/cmd/godoc
           

四、生成文檔

godoc -http :6060
http://localhost:6060/pkg/
           

4.1、文檔代碼

go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例

stack.go

// 這是一個非常好用的棧結構
//
// 作者:周飛
//
// 時間:2021年06月08日
//
// 郵箱:在追蹤
package Stack

// 一個先入先出棧
type Stack []int

// 入棧,将元素添加到頭部
// 		案例:
//		s.Push(123)
func (s *Stack) Push(v int) {
	*s = append(*s, v)
}

// 出棧,将頭部元素拿出來
func (s *Stack) Pop() int {
	head := (*s)[0]
	*s = (*s)[1:]
	return head
}
// 棧是否為空,傳回false,yes
func (s *Stack) IsEmpty() bool {
	return len(*s) == 0
}

           

4.2、測試

go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例
go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例
go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例
go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例
go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例

五、生成示例

godoc -http :6060
http://localhost:6060/pkg/
           

5.1、示例代碼

go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例

stack_test.go

package Stack

import "fmt"


func ExampleStack_Pop() {
	s := Stack{1}
	s.Push(2)
	s.Push(3)
	fmt.Println(s.Pop())
	fmt.Println(s.Pop())
	fmt.Println(s.IsEmpty())

	fmt.Println(s.Pop())
	fmt.Println(s.IsEmpty())
	// Output:
	// 1
	// 2
	// false
	// 3
	// true
}

           

5.2、測試

go文法--基礎32--文檔一、生成文檔指令二、生成示例代碼三、錯誤處理四、生成文檔五、生成示例

繼續閱讀