В Go тип можно экспортировать, если он начинается с заглавной буквы. Например, Struct1
экспортируется и доступен извне пакета, но struct1
нет, так как он не был экспортирован. Неэкспортированные имена доступны только внутри этого пакета.
Вы можете импортировать пакет A в пакет B и получить доступ к экспортированному типу как A.Struct1
:
package B
import (
"A"
"fmt"
)
func CreateAndPrintStruct() {
struct1 := A.Struct1{5, 4}
fmt.Printf("%+v", struct1)
}