Rumah Keuangan Pribadi Pengetik yang sangat diketik dalam pemrograman C ++ - dummies

Pengetik yang sangat diketik dalam pemrograman C ++ - dummies

Video: Enumerasi TSP/PSP NusaBarung 2025

Video: Enumerasi TSP/PSP NusaBarung 2025
Anonim

Pemrograman adalah semua tentang keterbacaan. Ini sulit (sebenarnya tidak mungkin) menulis dan memelihara program yang tidak bisa Anda baca. Bagian dari membaca daftar kode sumber adalah memahami apa yang digunakan dalam program. Bantuan paling dasar yang diberikan C ++ adalah #define yang ada di mana-mana, seperti contoh berikut yang dikutip:

#define PI 3. 141592653589793

Solusi ini tidak masalah untuk nilai individual, meskipun ia merasa bahwa #define mekanisme tidak (benar-benar berbicara) bagian dari C / C + + sejak preprocessor berjalan sebelum compiler. Sebagai tanggapan terhadap hal tersebut, C ++ 2011 memperkenalkan konstruk konstan :

constexpr long double PI = 3. 141592653589793;

Kata kunci constexpr membawa konstanta ke dalam tenda C + +. PI ini memiliki tipe yang nyata, seperti variabel C ++ lainnya. C ++ dapat menghasilkan pesan kesalahan dengan PI yang lebih masuk akal daripada yang melibatkan 3. 14159.

Ungkapan konstan baik untuk nilai konstan individu, namun sering kali konstanta mewakili himpunan benda dan bukan konstanta alami, seperti pada contoh berikut:

#define DC_OR_TERRITORY 0 #define ALABAMA 1 #define ALASKA 2 #define ARKANSAS 3 // … dan seterusnya …

Mungkin konstanta ini digunakan untuk mengidentifikasi negara bagian, mungkin digunakan sebagai sebuah indeks ke dalam array objek negara atau sebagai nilai dalam database di suatu tempat.

C ++ telah lama memiliki mekanisme yang lebih baik untuk menentukan jenis konstanta ini - enumerasi:

enum STATE {DC_OR_TERRITORY, // mendapatkan 0 ALABAMA, // mendapatkan 1 ALASKA, // mendapatkan 2 ARKANSAS, // … dan seterusnya …};

Kata kunci enum mengenalkan rangkaian konstanta yang disebut "enumerasi". Dalam hal ini, pencacahan tersebut membawa nama NEGARA. Setiap elemen dari enumerasi ini diberi nilai mulai dari 0 dan meningkat secara berurutan sebesar 1, jadi DC_OR_TERRITORY didefinisikan sebagai 0, ALABAMA didefinisikan sebagai 1, dan seterusnya. Anda dapat mengganti urutan tambahan ini dengan menggunakan pernyataan assign sebagai berikut:

enum STATE {DC, TERRITORY = 0, ALABAMA, ALASKA, // … dan seterusnya …};

Versi NEGARA ini mendefinisikan sebuah elemen DC, yang diberi nilai 0. Kemudian mendefinisikan elemen baru TERRITORY, yang juga diberi nilai 0. ALABAMA mengambil 1, sama seperti sebelumnya.

Dalam prakteknya, pemrogram dapat menggunakan enumerasi untuk menulis kode yang cukup mudah dibaca seperti berikut ini:

pajak dua kali pajak (NEGARA) {return tax pricesByState [s];}

Satu-satunya masalah dengan pendekatan ini adalah bahwa penghitungan ini tidak menciptakan tipe baru (seperti yang mungkin Anda pikirkan).Sebenarnya, menurut standarnya, STATE hanyalah nama lain untuk int - dan konstanta ALABAMA, ALASKA, dan seterusnya adalah tipe int const.

Kompiler gcc sebenarnya menyediakan enum yang dideklarasikan dengan cara ini sedikit lebih banyak otoritas daripada hanya menyebutnya bentuk int lain. Anda sebenarnya dapat membebani fungsi berdasarkan tipe enum:

void fn (STATE s); void fn (int n); fn (ALASKA); // invokes fn (STATE)

Standar 2011 memungkinkan programmer membuat tipe yang sama sekali baru dengan menggunakan kata kunci enum. Karena pencipta standar baru tidak ingin melanggar kode yang ada, standar memerlukan penambahan kata kunci tambahan untuk menentukan jenis enumerasi, seperti pada contoh berikut:

kelas enum NEGARA {DC, TERRITORY = 0, ALABAMA, ALASKA, // … dan seterusnya …};

Kelas enumerasi sekarang merupakan tipe skala penuh seperti kelas yang ditentukan pengguna lainnya. Hal berikut ini bahkan tidak legal lagi karena dua alasan:

int s = ALASKA;

Pertama, ALASKA konstan hanya didefinisikan dalam namespace NEGARA. Dengan demikian, nama konstanta adalah NEGARA:: ALASKA. Kedua, tipe tidak int tapi STATE. Anda tidak dapat menetapkan nilai tipe STATE ke int.

NEGARA s = NEGARA:: ALASKA;

Pemrogram dapat menyusun ulang sebuah STATE ke int tapi dia harus melakukannya secara eksplisit - sedikitpun konversi tidak memotongnya dengan kelas enumerasi:

int n = (int) STATE:: ALASKA;

Jenis enum baru ini juga dapat didasarkan pada salah satu tipe nomor penghitungan lainnya selain hanya int:

kelas enum NEGARA: char {DC, // … sisa deklarasi sama
Pengetik yang sangat diketik dalam pemrograman C ++ - dummies

Pilihan Editor

Bagaimana Mengelola Komentar di WordPress Anda. com Blog - dummies

Bagaimana Mengelola Komentar di WordPress Anda. com Blog - dummies

Buka halaman Komentar dengan mengklik link Komentar di menu navigasi Dashboard WordPress. Halaman Komentar menunjukkan semua komentar di blog Anda sejak hari pertama Anda memulai. Di sini Anda bisa melihat komentar, mengeditnya, menandai mereka sebagai spam, atau flat-out menghapusnya. Jika Anda menetapkan pilihan Komentar Anda jadi ...

Bagaimana Mengelola Pengguna dan Penulis di Blog WordPress Anda - dummies

Bagaimana Mengelola Pengguna dan Penulis di Blog WordPress Anda - dummies

Pengguna WordPress halaman memberitahu Anda tentang semua pengguna di blog Anda. Ini mencantumkan nama pengguna, nama, alamat e-mail, peran di blog Anda, dan jumlah posting yang dibuat ke blog Anda. Untuk mengelola peran pengguna, Anda perlu memahami jenis akses yang diberikan masing-masing peran: Pengikut: Peran default ini ditugaskan untuk ...

Cara Membuat Permalinks WordPress Bekerja dengan Server Anda - dummies

Cara Membuat Permalinks WordPress Bekerja dengan Server Anda - dummies

Setelah Anda mengatur format untuk permalinks untuk situs WordPress Anda dengan menggunakan opsi selain default, WordPress menulis peraturan, atau arahan tertentu ke. htaccess file di server web anda Itu. htaccess file pada gilirannya mengkomunikasikan ke server web Anda bagaimana seharusnya menyajikan permalinks, sesuai dengan permalink ...

Pilihan Editor

Bagaimana cara Log In ke Layanan Cloud - dummies

Bagaimana cara Log In ke Layanan Cloud - dummies

Karena Cloud Service sepenuhnya berbasis di awan, semua Anda benar-benar Kebutuhan untuk mengaksesnya adalah koneksi internet. (Nah, Anda juga memerlukan nama pengguna dan kata sandi.) Anda dapat masuk dari kantor Anda dan kemudian mengambil tempat Anda tinggalkan di hotel saat bepergian di Tokyo. Salesforce memiliki banyak tindakan pengamanan ...

Bagaimana Bergerak di sekitar MYOB - dummies

Bagaimana Bergerak di sekitar MYOB - dummies

Di MYOB, Anda dapat melangkah maju dan mundur melalui setiap jendela pembelajaran saya. untuk mencintai kunci Tab komputer Anda. Ini jauh lebih mudah dan lebih cepat daripada menggunakan mouse anda. Keystrokes Shortcut Result Shift + Tab Bergerak ke belakang ke kolom sebelumnya Enter atau Tab Bergerak ke depan ke kolom berikutnya Alt + F4 Berhenti dan mengemas Esc Membawa ...

Bagaimana Membuka Kasus untuk Pelanggan di Salesforce. Kasus com - dummies

Bagaimana Membuka Kasus untuk Pelanggan di Salesforce. Kasus com - dummies

Adalah dasar Salesforce. com Layanan Cloud. Mereka adalah titik pusat kontak Anda dan apa yang agen hidup dan hirup setiap hari. Kasus adalah catatan penyelidikan layanan atau dukungan untuk pelanggan yang merinci masalah dan semua informasi yang mengelilinginya, seperti yang ditunjukkan. Kasus ...

Pilihan Editor

Menghitung Persen Tujuan di Excel - dummies

Menghitung Persen Tujuan di Excel - dummies

Ketika seseorang meminta Anda untuk menghitung satu persen Tujuannya, dia hanya mengatakan untuk membandingkan kinerja aktual dengan tujuan yang dinyatakan. Matematika yang terlibat dalam perhitungan ini sederhana: Bagilah tujuannya dengan aktual. Ini memberi Anda nilai persentase yang menunjukkan berapa banyak pencapaian yang telah dicapai. Misalnya, jika ...

Menghitung Persentase Varian di Excel - dummies

Menghitung Persentase Varian di Excel - dummies

Varians adalah indikator perbedaan antara satu angka dengan angka lainnya. Untuk memahami hal ini, bayangkan bahwa Anda menjual 120 widget pada suatu hari, dan keesokan harinya, Anda menjual 150. Perbedaan dalam penjualan sebenarnya sangat mudah dilihat; Anda menjual 30 widget lagi. Mengurangkan 120 widget dari 150 widget memberi ...

Menghitung Persentase Varian dengan Nilai Negatif di Excel - dummies

Menghitung Persentase Varian dengan Nilai Negatif di Excel - dummies

Rumus untuk menghitung varian persen dalam Excel bekerja dengan indah dalam banyak kasus. Namun, bila nilai benchmark adalah nilai negatif, rumusnya akan turun. Misalnya, bayangkan Anda memulai bisnis dan berharap bisa kehilangan tahun pertama. Jadi, Anda memberi anggaran sebesar negatif $ 10.000. Sekarang bayangkan itu ...