외부 패키지에서 정의된 유형 검색
Go에서는 이름이 대문자로 시작할 때 유형 정의를 내보냅니다. 다른 패키지에서 이러한 유형에 액세스하려면 go/importer 패키지를 사용할 수 있습니다.
해결책:
package main import ( "fmt" "go/importer" demo "example.com/path/to/demo" // import the package containing the types ) func main() { pkg, err := importer.Default().Import("example.com/path/to/demo") if err != nil { fmt.Println("error:", err) return } // Get the names of all exported types in the package for _, declName := range pkg.Scope().Names() { fmt.Println(declName) } }
이 코드는 다음과 같은 출력을 인쇄합니다. 데모에 정의된 내보낸 유형의 이름 패키지:
People UserInfo
참고: Go Playground에서 go/importer를 사용하면 오류가 발생할 수 있습니다.
위 내용은 외부 Go 패키지에서 내보낸 유형을 어떻게 검색할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!