>>126
C++やそれより後の言語には演算子オーバーロードというものが存在する。
例えばstd::cout << 〜;というのも<<演算子のオーバーロード。
std::coutはstd::basic_ostreamクラスのオブジェクトであるが、std::basic_ostreamのメンバには
basic_ostream& operator <<(int n);
basic_ostream& operator <<(const char *);
と言った具合に並んでいる。
そしてstd::cout << 5 << "個";という式は(cout << 5) << "個";と解釈されまず5を引数にしてoperator <<が呼ばれる。
この戻り値は元のオブジェクト自身への参照を返すので次にcout << "個"ということになる。