Aracılığıyla paylaş


C6246

C6246 Uyarı: <variable> yerel bildirimi Dış kapsamda aynı adı bildirimi gizler.Ek bilgi: <location> adresindeki önceki bildirimi bakın.

Bu uyarı iki bildirimleri yerel kapsamında aynı ada sahip gösterir.Dış kapsamında adı tarafından iç kapsamında bildirimi gizlidir.Dış kapsam bildirisinin herhangi bir kullanım yerel Mercilere kullanımda neden olur.

Örnek

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

#include <stdlib.h>
#define UPPER_LIMIT 256
int DoSomething( );

int f( )
{
  int i = DoSomething( );
  if (i > UPPER_LIMIT)
  {
    int i;
    i = rand( );
  }
  return i;
}

Bu uyarı düzeltmek için başka bir değişken adı aşağıdaki kodda gösterildiği gibi kullanın:

#include <stdlib.h>
#define UPPER_LIMIT 256
int DoSomething( );

int f ( )
{
  int i = DoSomething( );
  if (i > UPPER_LIMIT)
  {
    int j = rand( );
    return j;
  }
  else
  {
    return i;
  }
}

Bu uyarı yalnızca bir kapsam örtüşme tanımlar.