Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Memulakan Ahli Data Malar dengan betul dalam C?

Bagaimana untuk Memulakan Ahli Data Malar dengan betul dalam C?

Susan Sarandon
Susan Sarandonasal
2024-12-09 00:58:11825semak imbas

How to Properly Initialize Constant Data Members in C  ?

Memulakan Ahli Data Malar

Dalam pengaturcaraan C, ahli data malar digunakan untuk mentakrifkan nilai yang tidak boleh diubah suai selepas pemula. Apabila cuba untuk memulakan ahli data const dalam definisi kelas, anda mungkin menghadapi ralat disebabkan oleh sekatan C.

Penjelasan Ralat

Ralat pengkompil disebabkan kerana C melarang pemulaan ahli data const dalam definisi kelas. Ini adalah untuk mengelakkan berbilang takrifan ahli data yang sama dalam unit terjemahan yang berbeza.

Penyelesaian: Permulaan Di Luar Kelas

Untuk memulakan ahli data const, ia mestilah ditakrifkan di luar definisi kelas. Ini boleh dicapai menggunakan senarai pemula dalam pembina, seperti yang ditunjukkan di bawah:

#include <iostream>

using namespace std;

class T1 {
  const int t;  // Declaration of const data member

public:

  T1() : t(100)  // Initialization in initializer list
  {
    cout << "T1 constructor: " << t << endl;
  }
};

Senarai Pemula

Senarai pemula dalam pembina memulakan ahli data const sebelum permulaan kelas. Ini membenarkan nilai diberikan sebelum objek kelas dicipta.

Pertimbangan Lanjut

Adalah penting untuk ambil perhatian bahawa memulakan ahli data const menggunakan senarai pemula mesti dilakukan dalam pembina, dan ia tidak boleh diubah suai kemudian dalam atur cara.

Atas ialah kandungan terperinci Bagaimana untuk Memulakan Ahli Data Malar dengan betul dalam C?. 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