Derleyici Uyarısı (düzey 4) C4456
'identifier' bildirimi önceki yerel bildirimi gizler
Yerel kapsamda tanımlayıcı bildirimi, aynı ada ait önceki yerel bildirimin bildirimini gizler. Bu uyarı, yerel kapsamdaki tanımlayıcıya yapılan başvuruların amacınız olabilecek veya olmayan önceki yerel sürüme değil, yerel olarak bildirilen sürüme çözümlendiğini bilmenizi sağlar. Bu sorunu çözmek için, yerel değişkenlere diğer yerel adlarla çakışmayan adlar vermenizi öneririz.
Örnek
Aşağıdaki örnek C4456 oluşturur çünkü döngü denetim değişkeni int x
ve içindeki member_fn
yerel değişken double x
aynı adlara sahiptir. Bu sorunu çözmek için yerel değişkenler için farklı adlar kullanın.
// C4456_hide.cpp
// compile with: cl /W4 /c C4456_hide.cpp
struct S {
void member_fn(unsigned u) {
double x = 0;
for (int x = 0; x < 10; ++x) { // C4456
u += x; // uses local int x
}
x += u; // uses local double x
}
} s;
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin