[解決済み] "#include <iostream>"は何をするものですか?
2022-03-04 08:21:14
質問
C++の基本的な学習を始めたとき、私はいつも以下の見出しを使っていました。
#include <iostream>
using namespace std;
iostreamは何のためにあるのでしょうか?見出しとして毎回必要なのでしょうか?
解決方法は?
標準入出力ストリームの読み書きを行うには、それをインクルードする必要があります。
int main( int argc, char * argv[] )
{
std::cout << "Hello World!" << std::endl;
return 0;
}
を追加しないと、そのプログラムはコンパイルされません。
#include <iostream>
2行目は不要です
using namespace std;
で定義されたシンボル名をコンパイラに伝えるものです。
std
という名前空間は、プログラムのスコープに取り込まれるため、名前空間修飾子を省略して、たとえば次のように書くことができます。
#include <iostream>
using namespace std;
int main( int argc, char * argv[] )
{
cout << "Hello World!" << endl;
return 0;
}
出力ストリームを完全修飾名で参照する必要がないことに注意してください。
std::cout
という短い名前を使用することができます。
cout
.
個人的には、ヘッダーファイルの名前空間にあるすべてのシンボルを持ち込むのは好きではありません...。短くしたいシンボルを個別に選択する...だからこうするんだ。
#include <iostream>
using std::cout;
using std::endl;
int main( int argc, char * argv[] )
{
cout << "Hello World!" << endl;
return 0;
}
しかし、それは個人の好みの問題です。
関連
-
[解決済み] error: 'if' の前に unqualified-id を期待した。
-
[解決済み】テンプレートの引数1が無効です(Code::Blocks Win Vista) - テンプレートは使いません。
-
[解決済み】cc1plus:エラー:g++で認識されないコマンドラインオプション"-std=c++11"
-
[解決済み] explicit キーワードの意味は?
-
[解決済み] ルール・オブ・スリーとは?
-
[解決済み] C++11では、標準化されたメモリモデルが導入されました。その意味するところは?そして、C++プログラミングにどのような影響を与えるのでしょうか?
-
[解決済み] C++で仮想関数が必要な理由とは?
-
[解決済み] 未定義の動作とシーケンスポイント
-
[解決済み】C/C++の"-->"演算子とは何ですか?
-
[解決済み】なぜC++プログラマは'new'の使用を最小限に抑えなければならないのでしょうか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】非静的メンバ関数への参照を呼び出す必要がある
-
[解決済み】クラステンプレートの引数リストがない
-
[解決済み] string does not name a type Errorが発生するのはなぜですか?
-
[解決済み] 非常に基本的なC++プログラムの問題 - バイナリ式への無効なオペランド
-
[解決済み】リンカーエラーです。"リンカ入力ファイルはリンクが行われていないため未使用"、そのファイル内の関数への未定義参照
-
[解決済み] 解決済み] `pthread_create' への未定義の参照 [重複] [重複
-
[解決済み】なぜ、サイズ8の初期化されていない値を使用するのでしょうか?
-
[解決済み】VC++の致命的なエラーLNK1168:書き込みのためにfilename.exeを開くことができません。
-
[解決済み] 警告:暗黙の定数変換でのオーバーフロー
-
[解決済み】C++でヘッダーファイルをインクルードする際の角括弧< >とダブルクォート" "の違い?重複