>  기사  >  백엔드 개발  >  명시적인 패키지 이름 없이 Go에서 패키지 기능에 어떻게 액세스할 수 있나요?

명시적인 패키지 이름 없이 Go에서 패키지 기능에 어떻게 액세스할 수 있나요?

DDD
DDD원래의
2024-11-03 06:12:30384검색

How Can I Access Package Functions in Go Without Explicit Package Names?

명시적인 패키지 이름 없이 패키지 함수에 액세스

Go에서는 일반적으로 정규화된 패키지 이름을 사용하여 패키지 함수를 참조하는 것이 좋습니다. 그러나 패키지 이름을 사용하지 않고 패키지 함수를 호출하고 싶은 상황이 있습니다.

명시적 기간 가져오기 사용

패키지 이름을 사용하지 않고 패키지를 가져오는 한 가지 방법 패키지 이름을 사용하는 것은 명시적인 마침표(.) 가져오기를 사용하는 것입니다. 이는 컴파일러에게 패키지의 package 블록에 선언된 모든 내보낸 식별자를 가져오기 파일의 블록으로 가져오도록 지시합니다. 그런 다음 한정자 없이 이러한 식별자에 액세스할 수 있습니다.

예:

<code class="go">package main

import (
    . "fmt"
)

func main() {
    Println("Hello, playground")
}</code>

참고: Go 커뮤니티에서는 명시적인 마침표 가져오기 사용을 권장하지 않습니다. 프로그램을 읽기 어렵게 만듭니다. 이름이 현재 패키지 또는 가져온 패키지의 패키지 수준 식별자인지 확실하지 않습니다.

패키지 수준 변수 및 유형 별칭 사용

다른 옵션 함수에 대한 참조를 사용하여 패키지 수준 변수를 선언하는 것입니다. 유형 별칭을 사용하여 유형을 참조할 수도 있습니다.

예:

<code class="go">package main

import (
    "fmt"
)

var Println = fmt.Println

type ScanState = fmt.ScanState // type alias

func main() {
    Println("Hello, playground")
}</code>

이 접근 방식을 사용하면 패키지 이름 없이 식별자를 사용할 수 있지만 추가 구문이 도입되고 더 많은 기능을 사용할 수 있습니다. 장황합니다.

위 내용은 명시적인 패키지 이름 없이 Go에서 패키지 기능에 어떻게 액세스할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.