したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

管理人の独り言(プログラミング関連)

289 ◆rCEzuNnL0g:2008/09/07(日) 14:29:22
某所でキャストの仕方について次のような奴があった。
type(...)
つまり
char c = '3';
std::cout << int(c) << std::endl;
の後の奴を型キャストとか言っている訳だ。
うん実際に試せば分かるが此れは“51”と出力される。普通に出力すると“3”である。
ただ、此れは厳密にはキャストではなくて、int型のコンストラクタが呼ばれているだけである。
つまり、int型やchar型云々にもデフォルトでコンストラクタがあるということである。
実際に以下のコードを試すと“0”と出力される。
---
std::cout << int() << std::endl;
---
勿論char()にすれば何も表示されない(何故ならば、NULL文字だから)。
試していないが、その他unsigned int()とかwchar_t()とかでも同様であろう。
つまりこれらは0で初期化される。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板