Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Memulakan Ahli Tatasusunan `const` dalam C Menggunakan Senarai Permulaan Pembina?

Bagaimana untuk Memulakan Ahli Tatasusunan `const` dalam C Menggunakan Senarai Permulaan Pembina?

Barbara Streisand
Lepaskan: 2024-11-03 17:26:03
asal
611 orang telah melayarinya

How to Initialize `const` Array Members in C   Using Constructor Initialization Lists?

Menggunakan Senarai Permulaan Pembina untuk Memulakan Ahli Tatasusunan Konst

Dalam C , ahli kelas dengan kelayakan const dianggap tetap dan tidak boleh diubah suai selepas permulaan. Ini menimbulkan persoalan bagaimana untuk memulakan ahli tersebut dalam senarai pemula kelas. Pertimbangkan takrifan kelas berikut:

<code class="cpp">class MyClass {
public:
    const int arr[2];
};</code>
Salin selepas log masuk

Tidak mungkin untuk memulakan arr dalam badan fungsi pembina kerana ia diisytiharkan const. Walau bagaimanapun, C 11 memperkenalkan ciri baharu yang membenarkan memulakan ahli const dalam senarai permulaan pembina.

<code class="cpp">struct MyClass {
    const int arr[2];

    MyClass() :
        arr{ 2, 3 }
{
    // Other construction logic
}
};</code>
Salin selepas log masuk

Dalam contoh ini, ahli arr dimulakan dengan nilai {2, 3} dalam senarai permulaan pembina . Ini membolehkan penciptaan berbilang kejadian MyClass dengan nilai pemalar yang berbeza untuk arr.

Atas ialah kandungan terperinci Bagaimana untuk Memulakan Ahli Tatasusunan `const` dalam C Menggunakan Senarai Permulaan Pembina?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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