Translations of this page?:

const_cast

文法:

const_cast<> (オブジェクト);

const_castは、オブジェクトのconst属性や、volatile属性を削除にしようするキーワードです。対象となるデータ型は、(当然)const修飾子だけを持っていないということを除けば、入力元の型と同じでなければなりません。型はポインタ型や参照型でなければなりません。

例えば、以下のコードはconst_castを使用して、オブジェクトのconst修飾子を削除します。

class Foo {
public:
  void func() {} // constではないメンバー関数
};
 
void someFunction( const Foo& f )  {
  f.func();      // コンパイルエラー: const参照から非const関数は呼べません
  Foo &fRef = const_cast<Foo&>(f);
  fRef.func();   // OK
}

関連トピック: const, dynamic_cast, reinterpret_cast, static_cast, casting_comparison

 
• • • SitemapRecent changesRSScc