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

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

使用 Golang 導出導入

使用 Golang 導出導入

Go
桃花長相依 2023-04-24 17:06:00
不確定這對 Golang 來說是否不可能。使用 Node.js,我會這樣做:import * as person from './person';export {person};使用 Golang 我有models.go:package modelsimport (    "huru/models/person")是否可以從這個 models.go 文件中導出 person,在 person 命名空間中,比如 TypeScript/node.js?
查看完整描述

4 回答

?
茅侃侃

TA貢獻1842條經驗 獲得超21個贊

[I] 是否可以從這個 models.go 文件導出 person,在 person 命名空間中,比如 TypeScript/node.js?

不。


查看完整回答
反對 回復 2023-04-24
?
暮色呼如

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

你不能只通過一個完整的包。您可以通過基于它們創建自己的類型來傳遞不同的類型。如果有一個person.Person:


package models


import (

    "huru/models/person"

)


type Person person.Person


//or


type EmbeddedPerson struct{

    person.Person

    additional string

}

這具有允許您添加自己的功能的優點


func (p Person) CustomFunc() {}

這是一個游樂場鏈接,顯示了其中的一些細微差別:https://play.golang.org/p/1aLOcmsXHV2


查看完整回答
反對 回復 2023-04-24
?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

這里的 golang 概念有點不同。在命名空間范圍內可用的 golang 結構。


就像每個例子


package models


// struct name should starts with Capital letter to export

type Person struct {

    Name string

    age int

}

該Person結構將在同一命名空間下的所有文件中可用(例如。models)。您不需要導入它。


但是如果你想在models命名空間之外訪問,你必須導入包models并Person使用它訪問對象。


前任。


package anotherpackage


import (

    "<path to models>/models"

)


var perObj models.Person  // here is how you can access the Person struct

如果您仍然不清楚,請告訴我。


查看完整回答
反對 回復 2023-04-24
?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

不。


您可以這樣使用,例如自定義日志


package customLog


import "log"


func Print(args ...interface{}) {

  log.Print(args)

}

package example


func some() {

  customLog.Print("hi babay")

}


查看完整回答
反對 回復 2023-04-24
  • 4 回答
  • 0 關注
  • 214 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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