キャスト演算子Casting Operators

C++ 言語には、固有のキャスト演算子がいくつかあります。There are several casting operators specific to the C++ language. これらの演算子は、以前のスタイルの C 言語のキャストが持つあいまいさと危険性の一部を取り除くことを目的としています。These operators are intended to remove some of the ambiguity and danger inherent in old style C language casts. このような演算子を次に示します。These operators are:

  • dynamic_castポリモーフィックな型の変換に使用します。dynamic_cast Used for conversion of polymorphic types.

  • static_cast非ポリモーフィックな型の変換に使用します。static_cast Used for conversion of nonpolymorphic types.

  • const_cast を削除するために使用、 constvolatile、および __unaligned属性。const_cast Used to remove the const, volatile, and __unaligned attributes.

  • reinterpret_castビットの単純な再解釈に使用します。reinterpret_cast Used for simple reinterpretation of bits.

  • safe_castで使用されるC++/CLI 検証可能な MSIL を生成するためにします。safe_cast Used in C++/CLI to produce verifiable MSIL.

使用const_castreinterpret_castこれらの演算子は、古いスタイルのキャストと同じ危険性を提示するので、最後の手段として。Use const_cast and reinterpret_cast as a last resort, since these operators present the same dangers as old style casts. それでも、これらは、以前のスタイルのキャストを完全に置き換えるために必要です。However, they are still necessary in order to completely replace old style casts.

関連項目See also

キャストCasting