Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Mentakrifkan Static const std::string Ahli dalam C ?

Bagaimana untuk Mentakrifkan Static const std::string Ahli dalam C ?

Linda Hamilton
Lepaskan: 2024-12-19 03:48:09
asal
973 orang telah melayarinya

How to Define Static const std::string Members in C  ?

Mentakrifkan Ahli Data Statik Jenis const std::string

Dalam C , mentakrifkan ahli const statik peribadi jenis std::string dalam kelas menggunakan permulaan dalam kelas, seperti yang ditunjukkan di bawah, tidak mematuhi C standard:

class A {
   private:
      static const string RECTANGLE = "rectangle";
}
Salin selepas log masuk

Walau bagaimanapun, C menyediakan pendekatan alternatif untuk mencapai fungsi ini.

C 17 Pembolehubah Sebaris

Sejak C 17, anda boleh gunakan pembolehubah sebaris untuk tujuan ini. Pembolehubah sebaris ialah ciri C 17 yang membenarkan pengisytiharan pembolehubah statik secara langsung dalam definisi kelas, dengan kata kunci sebaris. Contohnya:

// In a header file (if necessary)
class A {
private:
  inline static const string RECTANGLE = "rectangle";
};
Salin selepas log masuk

Pendekatan Pra-C 17

Sebelum C 17, anda mesti mentakrifkan ahli statik di luar definisi kelas dan menyediakan pemula di sana. Berikut ialah contoh:

// In a header file (if necessary)
class A {
private:
  static const string RECTANGLE;
};
Salin selepas log masuk
// In one of the implementation files
const string A::RECTANGLE = "rectangle";
Salin selepas log masuk

Nota: Sintaks permulaan yang anda cuba (dalam definisi kelas) hanya disokong untuk jenis kamiran dan enum.

Atas ialah kandungan terperinci Bagaimana untuk Mentakrifkan Static const std::string Ahli dalam C ?. 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