Чи можу я використовувати ту саму змінну лічильника для for
циклу всередині for
циклу?
Або змінні впливатимуть одна на одну? Чи повинен наступний код використовувати іншу змінну для другого циклу, наприклад j
, або i
добре?
for(int i = 0; i < 10; i++)
{
for(int i = 0; i < 10; i++)
{
}
}
-Wshadow
не включається -Wall
.
-Wshadow
попереджає про затінення глобальних змінних, що може легко набриднути у великих проектах.
-Wextra
не включає -Wshadow
. Я думаю, що це досить часто в деяких проектах, або який-небудь розробник gcc любить затінення як стиль кодування, щоб гарантувати, що він залишився таким.
-Wshadow
має жахливу помилкову швидкість, що робить його абсолютно марним. Сфера існування є причиною, і тінірування апріорі не є проблематичною. Зараз -Wshadow-local
(зауважте: ні -Wshadow=local
) дуже відрізняється. Але, на жаль, GCC поки що відмовилася включати його в багажник (хоча, мабуть, є і вилки GCC, які включають його).
i
, з різними сферами застосування. Використовуйте-Wshadow
разом із GCC, щоб автоматично повідомляти про такі проблеми.