みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

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

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

投稿日時 - 2013-02-02 18:28:54

QNo.7924418

暇なときに回答ください

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

#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/

投稿日時 - 2013-02-03 08:54:18

お礼

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

投稿日時 - 2013-03-03 06:27:40

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

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

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

投稿日時 - 2013-02-08 16:11:10

お礼

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

投稿日時 - 2013-03-03 06:28:33

ANo.3

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

投稿日時 - 2013-02-04 06:18:17

お礼

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

投稿日時 - 2013-03-03 06:28:12

ANo.1

zwi

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

投稿日時 - 2013-02-02 19:13:52

お礼

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

投稿日時 - 2013-03-03 06:27:05

あなたにオススメの質問