Czy mogę użyć tej samej zmiennej licznika dla for
pętli wewnątrz for
pętli?
A może zmienne będą miały na siebie wpływ? Czy poniższy kod powinien używać innej zmiennej dla drugiej pętli, na przykład j
, czy jest w i
porządku?
for(int i = 0; i < 10; i++)
{
for(int i = 0; i < 10; i++)
{
}
}
-Wshadow
nie ma tego w -Wall
.
-Wshadow
ostrzega również o cieniowaniu zmiennych globalnych, co może łatwo irytować w przypadku większych projektów.
-Wextra
nie zawiera -Wshadow
. Wydaje mi się, że jest to dość powszechne w niektórych projektach lub niektórzy deweloperzy gcc uwielbiają shadowing jako styl kodowania, aby zagwarantować, że zostanie w ten sposób pominięty.
-Wshadow
ma horrendalny wskaźnik fałszywie dodatnich, co czyni go całkowicie bezużytecznym. Zakres istnieje z jakiegoś powodu, a cieniowanie nie jest a priori problematyczne. Teraz -Wshadow-local
(uwaga: nie -Wshadow=local
) jest zupełnie inaczej. Ale niestety GCC jak dotąd odmówił włączenia go do bagażnika (chociaż wydaje się, że istnieją rozwidlenia GCC, które go zawierają).
i
o różnych zakresach. Używaj-Wshadow
z GCC, aby automatycznie zgłaszać takie problemy.