Condividi tramite


La ricerca Dipendente di nome (Koenig) nelle funzioni

Il compilatore può utilizzare la ricerca dipendente dall'argomento del nome per trovare la definizione di una chiamata di funzione non qualificata.la ricerca dipendente dall'argomento di nome viene definita ricerca di Koenig.Il tipo di ciascun argomento in una chiamata di funzione è definito all'interno di una gerarchia degli spazi dei nomi, classi, strutture, unioni, o modelli.Quando si specifica un non qualificata suffisso la chiamata di funzione, il compilatore rileva una definizione di funzione nella gerarchia associata a ogni tipo di argomento.

Esempio

I seguenti funzionamento di esempio in Visual C++ .NET 2003 e versioni successive e si comporta come specificato nello standard C++.Nell'esempio, note del compilatore in esecuzione f() accetta un argomento x.argomento x è di tipo A::X, definito nello spazio dei nomi A.Il compilatore trova lo spazio dei nomi A e rileva una definizione della funzione f() accetta un argomento di tipo A::X.

// argument_dependent_name_koenig_lookup_on_functions.cpp
namespace A
{
   struct X
   {
   };
   void f(const X&)
   {
   }
}
int main()
{
// The compiler finds A::f() in namespace A, which is where 
// the type of argument x is defined. The type of x is A::X.
   A::X x;
   f(x);   
}

Vedere anche

Altre risorse

Conformità avanzata compilatore Visual C++ .NET 2003