とくにあぶなくないRiSKのブログ

危ないRiSKのブログだったかもしれない。本当はRiSKだけどググラビリティとか取得できるIDの都合でsscriskも使ったり。

キャスト

とりあえずメモ。


  • 強制キャスト reinterpret_cast<T>(v)

    1. 定値性を消してはダメ
    2. ポインタ→汎整数型
    3. 汎整数型・列挙型→ポインタ
    4. 関数へのポインタ→関数へのポインタ
    5. オブジェクトへのポインタ→オブジェクトへのポインタ
    6. 空ポインタ値→目的の型の空ポインタ値
    7. メンバへのポインタ(空ポインタ値含む)→メンバへのポインタ(空ポインタ値含む)
    8. ポインタ→参照

  • 定値性キャスト const_cast<T>(v)

    1. cvが異なるポインタのキャスト
    2. オブジェクト→参照
    3. cvが異なるデータメンバへのポインタのキャスト
    4. 空ポインタ値→目的の型の空ポインタ値