Udostępnij za pośrednictwem


Adres funkcji zastąpionej

Użyj nazwy funkcji bez argumentów zwraca adres tej funkcji.Na przykład:

int Func( int i, int j );
int Func( long l );

...

int (*pFunc) ( int, int ) = Func;

W powyższym przykładzie pierwsza wersja Func jest zaznaczone, a jego adres jest kopiowany do pFunc.

Kompilator Określa wersję funkcji wybierz przez wyszukiwanie funkcję z listy argumentów, która dokładnie odpowiada obiektu docelowego.Argumenty w funkcji zastąpionej deklaracje są dopasowywane do jednej z następujących czynności:

  • Obiekt inicjowany (jak pokazano w poprzednim przykładzie)

  • Lewej stronie instrukcji przypisania

  • Argument formalny do funkcji

  • Argument formalny do operatora zdefiniowane przez użytkownika

  • Zwracany typ funkcji

Jeśli stwierdzono brak dokładnego odpowiednika, wyrażenie, które ma adres funkcji jest niejednoznaczny, i zostanie wygenerowany błąd.

Należy zauważyć, że chociaż funkcja prawodawstwa wspólnotowego, Func, została użyta w poprzednim przykładzie, te same zasady są stosowane podczas podejmowania adres przeciążony funkcji elementów członkowskich.

Zobacz też

Informacje

Przeciążenie