Aracılığıyla paylaş


C6244

C6244 Uyarı: <variable> yerel bildirimi <line> adresindeki önceki bildirimi gizler <file>

Bu uyarıyı bir bildirimi bir dış kapsamında bir bildirimi ile aynı ada sahiptir ve önceki bildirimi gizler gösterir.Yerel kapsam içinde önceki bildirimde başvurmak mümkün olmayacak.Yukarıdaki bildirimi amaçlanan kullanımından bu uyarı yalnızca bir kapsam örtüşme ve yaşam örtüşme tanımlayan yerel bildirimini kullanarak önlersiniz.

Örnek

Aşağıdaki kod, bu uyarı oluşturur:

#include <stdlib.h>
#pragma warning(push)

// disable warning C4101: unreferenced local variable 
#pragma warning(disable: 4101) 

int i;
void f();
void (*pf)();

void test()
{
    // Hide global int with local function pointer
    void (*i)();  //Warning: 6244

     // Hide global function pointer with an int
    int pf;     //Warning: 6244
}
#pragma warning(pop)

Bu uyarı düzeltmek için aşağıdaki örnek kodu kullanın:

#include <stdlib.h>
#pragma warning(push)
// disable warning C4101: unreferenced local variable 
#pragma warning(disable: 4101) 

int g_i;          // modified global variable name
void g_f();       // modified global function name
void (*f_pf)();   // modified global function pointer name

void test()
{
    void (*i)();
    int pf;
}
#pragma warning(pop)

Bellek ayırma ile uğraşırken bir ayırma ve bir değişkende kaydedilmiş başka bir değişken tarafından serbest belirlemek için kodu gözden geçirin.