亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么我的包中的功能不起作用

為什么我的包中的功能不起作用

Go
qq_笑_17 2023-07-10 10:45:54
我已經放入了一個小代碼文件,其中$GOPATH是~/go/src. 這里我創建了一個文件夾mysrc,在那里我保存了一個文件mytest.go,如下:package mytestimport ("fmt")func myfn(){  fmt.Println("My own fn")}我嘗試使用以下文件導入上面的代碼:package mainimport ("mysrc")main(){    myfn()}當我嘗試運行上面的文件時,出現錯誤:# command-line-arguments./useMyfn.go:3:1: syntax error: non-declaration statement outside function body問題出在哪里以及如何解決?感謝您的幫助。編輯:我將主 fn 更正為,func main()但現在錯誤是:# command-line-arguments./useMyfn.go:2:9: imported and not used: "mysrc" as mytest./useMyfn.go:4:2: undefined: myfn
查看完整描述

1 回答

?
函數式編程

TA貢獻1807條經驗 獲得超9個贊

你需要做幾件事

  1. 我建議使用與文件夾名稱相同的包名稱。

  2. myfn()函數需要導出。如何做到:只需將函數名稱的第一個字符設置為大寫即可。

package mysrc // <-- 1
import (
    "fmt"
    )
    func Myfn() { // <-- 2
    fmt.Println("My own fn")
}
  1. func語句前需要關鍵字main()。

  2. 要訪問其他包中的函數,您需要在函數名稱之前寫下包名稱。在這種情況下,它將是mysrc.Myfn()

package main
import ( 
   "mysrc")
   func main() { // <-- 3
    mysrc.Myfn() // <-- 4
    }


查看完整回答
反對 回復 2023-07-10
  • 1 回答
  • 0 關注
  • 121 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號