Pembina Statik dalam C : Memulakan Ahli Data Statik
Ahli data statik ialah pembolehubah yang diisytiharkan dalam kelas yang dikongsi antara semua kejadian itu kelas. Dalam bahasa seperti Java dan C#, adalah mungkin untuk menggunakan pembina statik untuk memulakan ahli ini sebelum sebarang kejadian dibuat. Walau bagaimanapun, C tidak mempunyai pembina statik yang ditetapkan.
Untuk mencapai kefungsian yang serupa dalam C , pendekatan alternatif ialah mencipta kelas berasingan untuk data statik. Begini cara ia berfungsi:
class StaticStuff { // Read-only vector of characters std::vector<char> letters_; public: StaticStuff() { for (char c = 'a'; c <= 'z'; c++) { letters_.push_back(c); } } // Getter method to access letters_ const std::vector<char>& getLetters() const { return letters_; } }; class Elsewhere { static StaticStuff staticStuff_; // Initialize once };
Dalam contoh ini, StaticStuff memegang huruf ahli data statik_. Apabila program bermula, pembina untuk StaticStuff akan dijalankan sekali, secara automatik memulakan huruf_ dengan aksara yang betul. Kemudian, instance of Elsewhere boleh mengakses letters_ melalui instance statik StaticStuff tanpa perlu memulakannya secara eksplisit.
Kaedah ini menyediakan cara yang bersih dan cekap untuk memulakan ahli data statik dalam C tanpa menggunakan penggodaman yang jelek atau semakan yang tidak perlu dalam contoh pembina.
Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Memulakan Ahli Data Statik dalam C Tanpa Pembina Statik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!