


Ralat sintaks C++: pengecam dalam penghitungan mestilah pemalar integer, bagaimana untuk menyelesaikannya?
Apabila pengaturcaraan dalam C++, kadangkala anda akan menemui mesej ralat sintaks "Pengecam dalam pengiraan mestilah pemalar integer". Artikel ini menerangkan punca masalah ini dan penyelesaian yang mungkin.
Pertama, kita perlu menjelaskan apa itu penghitungan. Dalam C++, penghitungan ialah jenis data khas yang digunakan untuk menentukan koleksi pemalar dengan nilai diskret. Setiap pemalar dalam penghitungan diberikan nilai integer, dengan pemalar pertama menjadi lalai kepada 0 dan pemalar selebihnya bertambah mengikut turutan. Sebagai contoh:
enum Weekday {Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};
Dalam kod di atas, Hari Minggu ialah nama jenis penghitungan ini, Isnin, Selasa, dsb. ialah pemalar ahlinya, dan ia diberikan nilai integerdari 0 hingga 6 masing-masing.
Walau bagaimanapun, apabila kita tersilap mentakrifkan nilai pemalar ahli sebagai pemalar bukan integer apabila mentakrifkan penghitungan, seperti rentetan atau nombor titik terapung, sintaks "pengecam dalam penghitungan mestilah pemalar integer" akan muncul. Mesej ralat. Contohnya:
enum Fruit {Apple = 1, Banana = 2, Orange = "orange"}; //错误!
Dalam kod di atas, Jingga ditakrifkan sebagai pemalar rentetan, jadi ralat akan dilaporkan semasa penyusunan.
Jadi, bagaimana untuk menyelesaikan masalah ini? Penyelesaian mudah ialah dengan menyatakan secara eksplisit nilai integer untuk semua pemalar ahli dan bukannya menggunakan kaedah penambahan lalai. Contohnya:
enum Fruit {Apple = 1, Banana = 2, Orange = 3};
Dalam kod di atas, kami secara manual menentukan nilai integer untuk setiap pemalar ahli untuk mengelakkan ralat dengan pemalar bukan integer.
Penyelesaian lain ialah menggunakan kelas enum dan bukannya enum biasa. Kelas penghitungan adalah lebih ketat daripada penghitungan biasa dan tidak membenarkan penukaran tersirat nilai integer, dengan itu mengelakkan ralat di atas. Contohnya:
enum class Fruit {Apple = 1, Banana = 2, Orange}; //Orange自动被分配整数值3
Dalam kod di atas, kami menggunakan kelas enum untuk mentakrifkan penghitungan jenis Buah dan tiada nilai integer ditentukan untuk Jingga, tetapi ia masih diberikan nilai integer 3 kerana ini ialah takrifan tingkah laku enum kelas .
Ringkasnya, apabila menghadapi ralat sintaks "pengecam dalam penghitungan mestilah pemalar integer" dalam pengaturcaraan C++, kita boleh menyelesaikan masalah ini dengan menyatakan secara eksplisit nilai integer pemalar ahli atau menggunakan kelas penghitungan.
Atas ialah kandungan terperinci Ralat sintaks C++: pengecam dalam penghitungan mestilah pemalar integer, bagaimana untuk menyelesaikannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bagaimana untuk menyelesaikan ralat sintaks C++: 'expectedprimary-expressionbefore', 'token'? Gambaran Keseluruhan: Semasa menulis kod C++, kadangkala kami menghadapi pelbagai ralat. Salah satu daripadanya ialah "ungkapan-utama yang dijangkakan sebelum','token" (ungkapan utama tiada sebelum koma). Ralat ini biasanya dikesan semasa proses penyusunan, ia mendorong kita bahawa a

Bagaimana untuk menyelesaikan ralat sintaks C++: 'expectedprimary-expressionbefore'.'token'? Apabila menulis atur cara dalam C++, kadangkala kita menghadapi pelbagai ralat sintaks. Salah satu ralat biasa ialah 'expectedprimary-expressionbefore'.'token'. Apabila kami menggunakan sintaks yang salah untuk mengakses ahli kelas dalam kod kami, pengkompil akan melaporkan ralat ini.

Bagaimana untuk menyelesaikan ralat sintaks C++: 'expectedinitializerbefore'('token'? Dalam pengaturcaraan C++, anda sering menghadapi pelbagai ralat kompilasi. Salah satu ralat biasa ialah 'expectedinitializerbefore'('token'. Dalam artikel ini, kami Punca ralat ini akan dibincangkan secara terperinci dan penyelesaian akan disediakan Mula-mula, mari kita lihat contoh mudah: #include&l.

Golang adalah bahasa pengaturcaraan yang semakin popular pada masa kini. Tidak dapat dielakkan bahawa anda akan menghadapi beberapa ralat kompilasi semasa digunakan. Antaranya, ralat biasa ialah: "undefined:os.Environ". Artikel ini akan membincangkan punca ralat ini dan cara menyelesaikannya. Mula-mula, mari kita fahami peranan fungsi os.Environ. Fungsi os.Environ digunakan untuk mendapatkan jenis kepingan semua pembolehubah persekitaran di bawah sistem semasa dan mengembalikan resu kepingan rentetan dalam bentuk pasangan nilai kunci.

Cara menyelesaikan ralat sintaks C++: 'expectedprimary-expressionbefore'*'token' Dalam proses pembelajaran pengaturcaraan C++, kita sering menghadapi pelbagai ralat sintaks. Salah satu ralat biasa ialah 'expectedprimary-expressionbefore'*'token'. Ralat ini biasanya berlaku apabila menggunakan penunjuk, terutamanya kerana kami menggunakan sintaks yang salah di suatu tempat atau terlupa

Fungsi penghitungan dalam Php8.1 meningkatkan kejelasan dan jenis keselamatan kod dengan menentukan pemalar yang dinamakan. 1) Penghitungan boleh menjadi bilangan bulat, rentetan atau objek, meningkatkan kebolehbacaan kod dan keselamatan jenis. 2) Penghitungan adalah berdasarkan kelas dan menyokong ciri-ciri berorientasikan objek seperti traversal dan refleksi. 3) Penghitungan boleh digunakan untuk perbandingan dan tugasan untuk memastikan keselamatan jenis. 4) Penghitungan menyokong penambahan kaedah untuk melaksanakan logik kompleks. 5) Pemeriksaan jenis dan pengendalian ralat yang ketat boleh mengelakkan kesilapan biasa. 6) Penghitungan mengurangkan nilai sihir dan meningkatkan keupayaan, tetapi memberi perhatian kepada pengoptimuman prestasi.

Bagaimana untuk menyelesaikan ralat sintaks C++: 'dijangka')'sebelum'&'token'? Dalam proses pengaturcaraan C++, pelbagai ralat sintaks sering dihadapi. Salah satu ralat biasa ialah: "dijangka')'sebelum'&'token". Ralat ini biasanya berlaku dalam senarai parameter fungsi atau kaedah, menunjukkan bahawa pengkompil tidak dapat memahami kurungan kanan yang hilang sebelum pembolehubah atau jenis tertentu. Di bawah saya akan terperinci bagaimana untuk menyelesaikan ralat ini dan memberikan beberapa kod

Bagaimana untuk menyelesaikan ralat sintaks C++: 'expectedunqualified-idbefore'<'token'? Dalam pembangunan C++, kita sering menghadapi pelbagai ralat. Salah satu ralat biasa ialah 'expectedunqualified-idbefore'<'token'. Ralat ini biasanya bermakna pengecam hilang di suatu tempat, tetapi pengkompil menemui simbol '<'. Kesilapan macam ni
