「static cast」の版間の差分
提供: C++入門
(ページの作成:「C++のキャストで使われるstatic_cast(静的なキャスト)は、一般的なキャストを行います。intからlong、intからdouble、列挙...」) |
(相違点なし)
|
2014年1月2日 (木) 21:10時点における版
C++のキャストで使われるstatic_cast(静的なキャスト)は、一般的なキャストを行います。intからlong、intからdouble、列挙型からintなどの型変換です。 int*からchar*などのポインタ型の変換は行えません。ポインタ同士のキャストには、reinterpret_castを使用します。
読み方
- static_cast
- こんすと きゃすと
概要
int i = 0; double d = 1.2; i = static_cast<int>(d);
コンパイル時に評価され、キャストできない場合は、コンパイルエラーになります。
static_castの使用例
ソースコード static_cast.cc
#include <iostream> #include <cstdlib> using namespace std; int main (int argc, char *argv[]) { int i = 100; long l = static_cast <long> (i); exit (EXIT_SUCCESS); }
コンパイル
g++ static_cast.cc -o static_cast
実行例
特に出力はありません。
% ./static_cast
関連項目
- キャスト
- const_cast
- dynamic_cast
- reinterpret_cast
- static_cast
- std::static_pointer_cast
- std::const_pointer_cast
- std::dynamic_pointer_cast