Поделиться через


__super

Только для систем Microsoft

Используется для явного заявить, вызовите реализацию базового класса для функции, необходимо переопределить.

__super::member_function();

Заметки

Все доступные методы базового класса считается на этапе разрешения перегрузки, а функция, которая обеспечивает наилучшее совпадение, вызывается.

__super может использоваться только внутри тела функции-члена.

__super не может использоваться с помощью объявления.Дополнительные сведения см. в разделе использование объявление.

с введением атрибуты чтобы вставка код, код может содержать один или несколько базовых классов, имена которых невозможно узнать, но содержит методы, который необходимо вызвать.

Пример

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

ЭЛЕМЕНТ, относящийся Майкрософт

См. также

Ссылки

Ключевые слова C++