前置き
この記事は自らがC++学習を行う上でのメモ書き兼備忘録として記載しています。
書式のバリエーション・文章力は乏しく人様のタメにならないだろうと思いますが、
自分と同じくC++やオブジェクト指向言語を学習中の方々に見てもらうことで、
その方々のモチベーション維持・学習の共有などができれば幸いです。
(有識者様のご指摘もあればいいなという下心もあります)
あくまで主な目的は自分用ですので、
過度な期待はせずに温かい目で閲覧していただきますようお願い致します。
namespaceとは
namespaceの概要
namespace = 名前空間
全ての変数や関数はとある名前空間の上に存在する。
同じ名前空間上では同じ変数名は使用できないが、同じ変数名でもnamespaceが違えば使用することができる。大規模な開発では汎用的な変数名が重複することは容易に想像できるので、別々の名前空間を利用することで複雑な変数名の使用を避けることが可能。
namespaceの利用
namespaceを使用する場合はUsing句で指定することができる。
#include <iostream>
using namespace std;
int main()
{
cout << "Hello C++" << endl;
return 0;
}
※1行目のincludeはヘッダファイルというファイルの読み込みを行うためのキーワード
Hello C++
ここで使用されているstdとは標準名前空間と呼ばれており、
C++言語に元から備わっている名前空間です。
また、Using以外にも以下のように名前空間を指定することも可能です。
#include <iostream>
int main()
{
std::cout << "Hello C++" << std::endl;
return 0;
}
入力と出力
-
Cout
コンソール出力を行う。
連続して出力する場合は << で繋げる
例)cout << “Hello” << “”World << endl(改行); -
Cin
コンソール入力を受け付ける。
test.cpp#include <iostream> using namespace std; int main() { int hoge; cin >> hoge; cout << hoge << "が入力されました" << endl; return 0; }
結果2 2が入力されました
ストリームという概念
cout と cin はストリームという概念を使用して入出力を行っています。
ストリームとは文字通り「流れ」のようなもので、そこに値を送ったり受け取ったりしています。
先ほどから出てくる不等号(>>,<<)は流れの向きのようなものを表しています。
std::cout << "hello" << std::endl; //coutへ"Hello"という文字列を送る。
std::cin >> hoge //cinで受け取った値を変数hogeで受け取る
コンソールのみでなく、ファイルの読み書きもストリームに則って行われます。