__super

Specyficzne dla firmy Microsoft

Pozwala jawnie stwierdzić, że wywołujesz implementację klasy bazowej dla funkcji, która jest zastępowana.

Składnia

__super::member_function();

Uwagi

Wszystkie dostępne metody klasy bazowej są brane pod uwagę w fazie rozwiązywania przeciążenia, a funkcja, która zapewnia najlepsze dopasowanie, to ta, która jest wywoływana.

__super może pojawiać się tylko w treści funkcji składowej.

__super nie można używać z deklaracją using. Aby uzyskać więcej informacji, zobacz using Declaration (Używanie deklaracji ).

Wprowadzenie atrybutów wprowadzających kod może zawierać co najmniej jedną klasę bazową, której nazwy mogą nie być znane, ale zawierają metody, które chcesz wywołać.

Przykład

// 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)
   }
};

END Microsoft Specific

Zobacz też

Słowa kluczowe