Kami memiliki banyak Gaya Pengkodean atau spesifikasi pengkodean. Namun item ini mungkin sering kita lupakan, yaitu kita sering menggunakan parameter bool dalam parameter fungsi, yang akan sangat mengurangi keterbacaan kode. Tidak percaya? Mari kita lihat dulu kode di bawah ini.
Saat Anda membaca kode berikut, menurut Anda apa arti kode ini?
widget->cat ulang(salah); Apakah Anda ingin mengecat ulang? Atau apakah itu berarti sesuatu yang lain?
Setelah membaca dokumen, kami mengetahui bahwa parameter ini bersifat langsung, artinya false berarti tidak segera menggambar ulang, dan true berarti kode akan segera digambar ulang.
Ada juga fungsi seperti itu di Windows API: InvalidateRect. Jika Anda melihat kode berikut, menurut Anda apa artinya?
InvalidateRect(hwnd, lpRect, false); Mari kita tidak membicarakan seberapa buruk nama fungsi InvalidateRect. Mari kita bicara tentang parameter false terlebih dahulu? tidak valid artinya "membatalkan XXX", apa artinya salah? Negatif ganda? Apakah itu berarti dengan tegas?
Jika melihat kode seperti ini pasti cukup membingungkan. Jadi, Anda harus melihat dokumentasi atau definisi fungsi InvalidateRect. Anda akan melihat bahwa parameternya adalah BOOL bErase, yang artinya: "Apakah Anda ingin menggambar ulang latar belakang."
Ada banyak hal seperti itu. Melihat kode berikut, saya ingin mengganti "%USER%" di str dengan nama pengguna asli:
str.replace("%USER%", pengguna, false); // Qt 3TNND, apa maksudnya false? Tidak menggantinya? Atau apakah itu berarti sesuatu yang lain?
Saya mengetahui setelah membaca dokumentasi yang false artinya: "penggantian tidak peka huruf besar-kecil".
Sebenarnya, jika Anda menggunakan variabel/konstanta enum alih-alih variabel bool, Anda akan membuat kode Anda lebih mudah dibaca, seperti: