• ベストアンサー
  • 暇なときにでも

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

  • 質問No.7924418
  • 閲覧数533
  • ありがとう数4
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 92% (12/13)

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

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

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

ベストアンサー率 55% (492/894)

#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

お礼率 92% (12/13)

お礼が遅くなり申し訳ありません。ありがとうございます。
投稿日時:2013/03/03 06:27

その他の回答 (全3件)

  • 回答No.4

ベストアンサー率 60% (9/15)

プラットフォームが分からないのですが、FreeBSD,NetBSDなどのBSD系OSやLinuxなどのオープンソースOSであれば、
標準ライブラリのソースファイルを見れば良いと思います。

ソースが公開されていない商用パッケージのC++だとどうしようもないと思いますが、ヘッダファイルを見れば、
実はマクロになっているなんてものもあるかもしれません。
お礼コメント
DorMax0

お礼率 92% (12/13)

お礼が遅くなり申し訳ありません。ありがとうございます。
投稿日時:2013/03/03 06:28
  • 回答No.3

ベストアンサー率 26% (845/3158)

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

お礼率 92% (12/13)

参考になりました。お礼が遅くなり申し訳ありません。ありがとうございます。
投稿日時:2013/03/03 06:28
  • 回答No.1

ベストアンサー率 56% (730/1282)

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

お礼率 92% (12/13)

お礼が遅くなり申し訳ありません。ありがとうございます。
投稿日時:2013/03/03 06:27
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ