__declspec(hidesbase)

提供: Appmethod Topics
移動先: 案内検索

キーワード(アルファベット順):インデックス への移動


カテゴリ

修飾子拡張キーワード記憶クラス指定子

構文

__declspec(hidesbase) declarator

hidesbase 引数は、Object Pascal との互換性を保つために使用されます。 Object Pascal コードを最小限の変更で C++ に移植できるように C++ の標準のオーバーライド セマンティクスを変更するために使用されます。

メモ: __declspec(hidesbase) の代わりに、sysmac.h に定義されているマクロ HIDESBASE を使用することもできます。

以下のコード例では、マクロ HIDESBASE の効果を示しています。

メソッド f はオーバーライドされます。 HIDESBASE を付けると、メソッド f はオーバーライドされません。
 class T1 {
 public:
  virtual void f() 
  {
   puts("T1::f");
  }
 };
 
 class T2 : public T1 {
 public:
  void f() 
  {
   puts("T2::f");
  }
 };
 
 // ...
 T1 *t = new T2();
 t->f(); // displays T2::f
 class T1 {
 public:
  virtual void f() 
  {
   puts("T1::f");
  }
 };
 
 class T2 : public T1 {
 public:
  HIDESBASE void f() 
  {
   puts("T2::f");
  }
 };
 
 // ...
 T1 *t = new T2();
 t->f(); // displays T1::f

関連項目