Bir fordöngünün içindeki döngü için aynı sayaç değişkenini kullanabilir miyim for?
Yoksa değişkenler birbirini mi etkiler? Aşağıdaki kod, ikinci döngü için farklı bir değişken kullanmalı mı j, yoksa iiyi mi?
for(int i = 0; i < 10; i++)
{
for(int i = 0; i < 10; i++)
{
}
}
-Wshadowdahil olmadığına şaşırdım -Wall.
-Wshadow, küresel değişkenlerin gölgelenmesi konusunda da uyarıyor, bu da daha büyük projelerde kolayca can sıkıcı olabilir.
-Wextraiçermiyor bile -Wshadow. Sanırım bazı projelerde yeterince yaygındır veya bazı gcc geliştiricileri, bu şekilde dışlanmayı garanti etmek için bir kodlama stili olarak gölgelendirmeyi sever.
-Wshadowkorkunç bir yanlış pozitif oranına sahip ve tamamen işe yaramaz hale getiriyor. Kapsam bir sebebi var ve gölgeleme olan önsel sorunlu değil. Şimdi -Wshadow-local(not: değil -Wshadow=local ) çok farklı. Ancak ne yazık ki GCC şimdiye kadar onu bagaja dahil etmeyi reddetti (ancak GCC'nin çatalları onu içeriyor gibi görünüyor).
i, farklı kapsamlara sahip iki farklı değişken vardır . Bu-Wshadowtür sorunların otomatik olarak bildirilmesi için GCC ile birlikte kullanın .