__super
Sezione specifica Microsoft
Consente di dichiarare in modo esplicito che si sta chiamando un'implementazione della classe di base per una funzione di cui si esegue l'override.
Sintassi
__super::member_function();
Osservazioni:
Tutti i metodi accessibili della classe di base vengono considerati durante la fase di risoluzione dell'overload e la funzione che fornisce la corrispondenza migliore è quella che viene chiamata.
__super
può essere visualizzato solo all'interno del corpo di una funzione membro.
__super
non può essere utilizzato con una dichiarazione using. Per altre informazioni, vedere Using Declaration .See using Declaration for more information.
Con l'introduzione di attributi che inserisce codice, il codice potrebbe contenere una o più classi di base i cui nomi potrebbero non essere noti, ma che contengono metodi che si desidera chiamare.
Esempio
// deriv_super.cpp
// compile with: /c
struct B1 {
void mf(int) {}
};
struct B2 {
void mf(short) {}
void mf(char) {}
};
struct D : B1, B2 {
void mf(short) {
__super::mf(1); // Calls B1::mf(int)
__super::mf('s'); // Calls B2::mf(char)
}
};
Fine sezione specifica Microsoft
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per