Bagaimana untuk Memulakan Ahli Data Statik Peribadi dalam C Tanpa Pembina Statik?

Patricia Arquette
Lepaskan: 2024-11-10 18:06:02
asal
398 orang telah melayarinya

How to Initialize Private Static Data Members in C   Without Static Constructors?

Pemulaan Ahli Data Statik Peribadi: Alternatif kepada Pembina Statik

Adalah perkara biasa untuk menghadapi keperluan untuk ahli data statik peribadi dalam kelas , serupa dengan konsep Java atau C# bagi pembina statik. Walau bagaimanapun, C tidak menyediakan mekanisme eksplisit untuk pembina statik.

Untuk menangani isu ini, C menawarkan pendekatan alternatif. Daripada mengisytiharkan ahli data statik dalam kelas, buat kelas biasa yang berasingan untuk menyimpan data statik. Isytiharkan contoh statik kelas biasa ini dalam kelas yang dikehendaki.

Contohnya:

class StaticStuff
{
    std::vector<char> letters_;

public:
    StaticStuff()
    {
        for (char c = 'a'; c <= 'z'; c++)
            letters_.push_back(c);
    }

    // Provide a method to access letters_
};

class Elsewhere
{
    static StaticStuff staticStuff; // Static instance runs once
};
Salin selepas log masuk

Dengan menggunakan teknik ini, data statik dimulakan sekali semasa pelaksanaan program dan boleh diakses sepanjang hayat program ini. Pendekatan ini berfungsi sebagai alternatif yang berdaya maju kepada pembina statik dalam C .

Atas ialah kandungan terperinci Bagaimana untuk Memulakan Ahli Data Statik Peribadi dalam C Tanpa Pembina Statik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan