Dapatkah saya menggunakan variabel penghitung yang sama untuk for
perulangan di dalam for
perulangan?
Atau akankah variabel mempengaruhi satu sama lain? Haruskah kode berikut menggunakan variabel yang berbeda untuk loop kedua, seperti j
, or is i
fine?
for(int i = 0; i < 10; i++)
{
for(int i = 0; i < 10; i++)
{
}
}
-Wshadow
tidak termasuk dalam -Wall
.
-Wshadow
memperingatkan tentang membayangi variabel global, yang dapat dengan mudah mengganggu dalam proyek yang lebih besar.
-Wextra
tidak termasuk -Wshadow
. Saya kira itu cukup umum di beberapa proyek, atau beberapa pengembang gcc suka membayangi sebagai gaya pengkodean, untuk menjamin ditinggalkan seperti ini.
-Wshadow
memiliki tingkat positif palsu yang menghebohkan, membuatnya sama sekali tidak berguna. Cakupan ada karena suatu alasan, dan shadowing secara apriori tidak bermasalah. Sekarang -Wshadow-local
(catatan: tidak -Wshadow=local
) sangat berbeda. Namun sayangnya GCC sejauh ini menolak untuk memasukkannya ke dalam trunk (meskipun tampaknya ada garpu GCC yang menyertakannya).
i
, dengan cakupan berbeda. Gunakan-Wshadow
dengan GCC agar masalah seperti itu dilaporkan secara otomatis.