Vyhledávání názvu (Koenig) v závislosti na argumentu funkce
Kompilátor lze použít v závislosti na argumentu název k vyhledání definice neúplných funkce volání.Vyhledávání názvu závislých argument se také nazývá Koenig vyhledávání.Typ každý argument ve volání funkce je definována v rámci hierarchie oborů názvů, třídy, struktury, sdružení nebo šablony.Při zadávání neúplnému Příponové operátory volání funkce kompilátoru hledá definice funkce v hierarchii přidružené každý typ argumentu.
Příklad
Následující příklad pracuje v jazyce C++.NET 2003 a novější a chová se jako v C++ standard.Ve vzorku, kompilátor poznámky funkce f() trvá argument x.Argument x je typu A::X, která je definována v oboru názvů A.Kompilátor hledá oboru názvů A a nalezne definice funkce f() , která má argument typu 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);
}