さわやかな朝の挨拶のガイドライン 第三章

このエントリーをはてなブックマークに追加
31水先案名無い人
「using namespace std;」
「#pragma warning(disable:4786)」
さわやかなusing宣言とプリプロセッサディレクティブが、共通ヘッダーに記述される。
コンテナクラスに集うイテレータたちが、今日も機械のような正確さで、共通algorithmの中をくぐり抜けていく。
格納する型を知らないテンプレートクラスを包むのは、stdというnamespace。
コンテナクラスにsmart_ptrを格納しないように、std::sortに渡すイテレータの種類を間違えないように、
MSDNと首っ引きで書くのがここでのたしなみ。
もちろん、メンバ関数テンプレートをサポートしていないといった、
はしたないコンパイラなど存在していようはずもない。

STL。
C++の一部であるこのライブラリは、
もとはAlexander Stepanov氏やDavid Musser氏の考案によって作られたという、
伝統あるISO/IEC14882:1998 C++の標準ライブラリである。
C++。C言語とSimula67言語の面影を未だに残しているこの言語で、IDEに見守られ、
文字列操作から連想配列までの汎用アルゴリズムが使えるテンプレートの園。
時代が移り変わり、標準でスレッド機能などをサポートしているJavaが現れた今日でさえ、
標準を厳格に満たしたSTLPortをコンパイルできないコンパイラが平気で出荷される、
という仕組みが未だ残っている貴重なライブラリである。

元ネタ:C++言語(プログラミング言語)の標準ライブラリ、STL(Standard Template Library)