Resolusi Skop Global Tanpa Skop
Dalam C , pengendali resolusi skop (::) memainkan peranan penting dalam menyelesaikan skop dan mengakses pengecam dalam program. Walau bagaimanapun, apakah yang berlaku apabila pengendali resolusi skop digunakan tanpa skop yang jelas?
Tujuan :: tanpa Skop
Pengendali resolusi skop (::) tanpa skop berfungsi untuk tujuan tertentu dalam C . Ia secara eksplisit menyatakan skop global, membenarkan akses kepada entiti global dari mana-mana titik dalam program. Mekanisme ini amat berguna apabila fungsi atau pembolehubah dengan nama yang sama wujud dalam skop semasa dan versi global perlu diakses secara eksplisit.
Sintaks dan Penggunaan
Untuk mengakses skop global tanpa menggunakan pengecam skop eksplisit, sintaks berikut digunakan:
::identifier;
Di mana pengecam boleh menjadi fungsi, pembolehubah atau ahli kelas yang wujud dalam skop global.
Contoh
Pertimbangkan contoh berikut:
void bar(); // Global function class foo { void some_func() { ::bar(); } // Accessing the global bar() void bar(); // Class member function };
Dalam contoh ini, kedua-dua fungsi bar wujud dalam skop global dan sebagai fungsi ahli kelas foo. Untuk menggunakan fungsi bar global dari dalam fungsi ahli some_func, pengendali resolusi skop :: digunakan untuk mengakses skop global secara eksplisit.
Dengan menggunakan :: tanpa skop, pengaturcara boleh menyahkekaburan pengecam dengan nama yang sama dan pastikan versi yang betul diakses dari dalam skop tertentu.
Atas ialah kandungan terperinci Bagaimanakah Pengendali Resolusi Skop C (::) Berfungsi Tanpa Skop Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!