Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le compilateur peut utiliser la recherche de nom d'argument pour rechercher la définition d'un appel de fonction non qualifiée.la recherche de nom d'argument est également appelée recherche de Koenig.Le type de chaque argument dans un appel de fonction est défini dans une hiérarchie d'espaces de noms, des classes, des structures, des unions, ou les modèles.Lorsque vous spécifiez un appel de fonction non qualifié de suffixe , recherche du compilateur pour la définition de fonction dans la hiérarchie ont associé à chaque type d'argument.
Exemple
L'exemple suivant fonctionne dans Visual C++ .NET 2003 et versions ultérieures, et se comporte comme spécifié dans la norme C++.Dans l'exemple, les notes de compilateur qui s'exécutent f() prend un argument x.L'argument x est du type A::X, défini dans l'espace de noms A.Le compilateur recherche l'espace de noms A et trouve une définition pour la fonction f() qui prend un argument de type 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);
}