C++ キャストの探求
Module 06の主要な型変換テクニックをインタラクティブに学ぶ
Exercise 00: スカラ型の変換
文字列リテラルを各種基本データ型に変換する`static_cast`の動作をシミュレートします。特殊な値(nan, inf)や変換不能な場合の挙動も確認できます。
変換結果:
char: -
int: -
float: -
double: -
Exercise 01: シリアライズ
ポインタのメモリアドレスを整数に変換し、元に戻すプロセスを可視化します。危険な`reinterpret_cast`が内部で何をしているのかを体感しましょう。
1. 元のポインタ
Data*
→
2. シリアライズ後
uintptr_t
→
3. デシリアライズ後
Data*
ボタンを押して開始してください
Exercise 02: 型の識別
`dynamic_cast`を使い、基底クラスのポインタが指す実際の型を特定します。ポインタと参照で失敗時の挙動が異なる(NULLを返すか、例外を投げるか)様子を比較します。
現在のオブジェクト: 未生成