__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

関連項目