この特集のトップページへ
Chapter 1:オブジェクト指向から見たCOM+

見出し 1.1.2 多重継承とキャストの拡張
 C++には,前項で紹介したクラスの単一継承だけでなく,複数の基本クラスを継承する多重継承も導入されている。これは ATL(Active Templete Library)のCOMアーキテクチャのなかで有効に活用されている(ATLについては,詳しくは後述する)。

 また,C++の基本型や生成されたオブジェクトの型をキャストしたり,静的なオブジェクトや動的なオブジェクトを型変換したりするため,伝統的なCのキャスト(cast)記法である「(型名)式」もC++で次のように拡張された。

  ○const_cast<型名>(式)
  ○static_cast<型名>(式)
  ○dynamic_cast<型名>(式)
  ○reinterpret_cast<型名>(式)

 最新のキャストが導入されたことにより,C++では柔軟にオブジェクトの多態性を実現できるようになっている。C++のキャストについては,COMを実装するときに,順を追って説明する予定である。

prev Chapter 1 3/8 next