• ベストアンサー

C++ 標準ライブラリの実際の中身を知りたい

現在C++を勉強中です。 そこで質問なのですが、C++の標準ライブラリの中身って閲覧する事はできませんか? 例えば cout とか。どのように出力を示すコードが書かれているのか知りたいです。 <iostream>に限らず、色々調べたいです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

#1さんのおっしゃるとおり、libstdc++の実装はいろいろあります。ここでは参考までに2つほど紹介します。 GNU http://gcc.gnu.org/libstdc++/ ソースコード: http://gcc.gnu.org/viewcvs/trunk/libstdc%2B%2B-v3/ LLVM http://libcxx.llvm.org/ (つながらないのでGoogleのキャッシュなどで見てください) LLVMのサイトにつながらないので代わりにFreeBSDに移植されている方を。 ソースコード: http://svnweb.freebsd.org/base/head/contrib/libc%2B%2B/

DorMax0
質問者

お礼

お礼が遅くなり申し訳ありません。ありがとうございます。

その他の回答 (3)

回答No.4

プラットフォームが分からないのですが、FreeBSD,NetBSDなどのBSD系OSやLinuxなどのオープンソースOSであれば、 標準ライブラリのソースファイルを見れば良いと思います。 ソースが公開されていない商用パッケージのC++だとどうしようもないと思いますが、ヘッダファイルを見れば、 実はマクロになっているなんてものもあるかもしれません。

DorMax0
質問者

お礼

お礼が遅くなり申し訳ありません。ありがとうございます。

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

多くの実装では、大部分のコードはヘッダにあり、しかもヘッダはファイルとして実装されています。 したがって、ヘッダに相当するファイルをテキストエディタで開けば、ほとんどの内容を閲覧することができます。

DorMax0
質問者

お礼

参考になりました。お礼が遅くなり申し訳ありません。ありがとうございます。

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.1

実装で中身は全然違うので、例えばgccとVisualC++では別物レベルです。 まぁ、少なくともgccはオープンソースですのでライブラリも含めて全てのソースコードは公開されています。 VC++でもF11でステップインすればトレース出来るはずです。まぁ、どちらも初心者が読むようなもんじゃないと断言出来ますけどね。

DorMax0
質問者

お礼

お礼が遅くなり申し訳ありません。ありがとうございます。

関連するQ&A