Public vs. Private: Go의 대문자 vs. 소문자
Delphi 및 C와 같은 언어를 사용하는 많은 프로그래머는 작업할 때 혼란을 겪습니다. Go의 접근 수정자. 이 글의 목표는 Go에서 public 및 private 멤버를 정의하는 규칙을 명확히 하는 것입니다.
Go에서는 함수 이름을 대문자로 지정하여 공용 액세스가 가능합니다. 그런데 list 패키지에서 public 멤버가 소문자로 되어 있어서 불일치가 발생했습니다.
이러한 불일치를 이해하는 열쇠는 패키지 이름과 멤버 이름의 차이에 있습니다. *list.List의 목록은 Go에서 전통적으로 소문자로 작성되는 패키지 이름을 나타냅니다. 반면에 List 부분은 공개 멤버 이름을 나타냅니다.
Go에서 멤버 가시성에 대한 규칙은 간단합니다. 공개 멤버의 이름은 대문자로 지정되고 비공개 멤버의 이름은 소문자로 지정됩니다. 이는 패키지 내에서 선언된 함수, 유형, 변수 및 상수에 적용됩니다.
따라서 공개된 GetFactors 함수는 대문자로 올바르게 이름이 지정됩니다. list.List 유형은 소문자 패키지 이름을 사용함에도 불구하고 컨테이너/목록 패키지 내의 공개 멤버입니다.
가져온 패키지의 유형에 대한 로컬 참조의 경우 기본 패키지 이름을 사용할 수 있습니다(예: l := list.New()). 또는 가져온 패키지에 다른 이름을 사용하도록 별칭을 지정할 수 있습니다
위 내용은 Go의 다른 공개 멤버가 대문자를 사용하는 동안 `list.List`는 소문자를 사용하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!