Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah cara saya menentukan keterlihatan pengecam dalam Go?

Bagaimanakah cara saya menentukan keterlihatan pengecam dalam Go?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-11 15:34:03507semak imbas

How do I determine the visibility of identifiers in Go?

Pengecam Awam dan Persendirian dalam Go: Huruf Besar dan Kecil

Dalam Go, pengubah suai akses awam dan peribadi ditentukan oleh aksara pertama daripada nama pengecam. Pengecam huruf besar adalah awam, manakala pengecam huruf kecil adalah peribadi. Konvensyen penamaan ini digunakan bukan sahaja untuk fungsi tetapi juga untuk kelas kontena.

Fungsi Awam

Seperti yang dinyatakan, fungsi awam dalam Go diisytiharkan dengan aksara pertama huruf besar. Peraturan ini terpakai walaupun pada fungsi dalam pakej yang anda import. Contohnya, jika anda mengimport pakej "bekas/senarai", jenis Senarai akan boleh diakses sebagai "senarai.Senarai".

Rujukan Kelas Bekas

Dalam kes rujukan kelas kontena, seperti *list.List dan l := list.New(), pengecam huruf kecil (senarai) merujuk kepada nama pakej, bukan jenis itu sendiri. Nama pakej ditetapkan sebagai alias untuk bahagian terakhir laluan pakej (dalam kes ini, "senarai").

Nama Pakej

Adalah penting untuk diperhatikan bahawa nama pakej sebenar mungkin tidak selalu sepadan dengan bahagian terakhir laluan pakej. Nama pakej ditentukan oleh pengisytiharan dalam kod pakej.

Ringkasan Peraturan

Peraturan umum untuk pengecam awam dan peribadi dalam Go ialah:

  • Awam: Huruf besar pertama aksara (cth., myFunc)
  • Swasta: Huruf kecil pertama aksara (cth., _myFunc atau _myFuncImpl)

Atas ialah kandungan terperinci Bagaimanakah cara saya menentukan keterlihatan pengecam dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn