よくある質問
このサイトの目的は何ですか?
私たちの目標は、CおよびC++言語と標準ライブラリの完全なオンラインリファレンス、つまりCおよびC++標準のより便利なバージョンをプログラマに提供することです。
主な目的は、CとC++の適切な仕様を持つことです。つまり、経験豊富なプログラマには暗黙的に明白なことは省略するか、少なくとも関数、定数、またはクラスの主要な説明から分離する必要があります。さまざまな使用例を示すのに適した場所は、各ページの「例」セクションです。理論的根拠、実装ノート、ドメイン固有のドキュメントは、各ページの「ノート」セクションに含めることを推奨します。
なぜここの資料は標準CとC++に限定されているのですか?
手短に言えば、私たちは量よりも質を選びました。ただし、一部のBoostライブラリも追加の候補になる可能性があります。それらのチュートリアルは非常に優れていますが、リファレンスドキュメントはしばしば非常に柔軟性に欠け、不便です。
より詳しい情報はどこで入手できますか?
このサイトの範囲外の代替リンクと資料については、以下のリンク集[1] [2]を参照してください。
このリファレンスはC標準のどの改訂版に準拠していますか?
C23は最近発行されたC標準であり(C2yが進行中)、Cリファレンスの主な焦点となっています。
ただし、より完全なリファレンスを提供するために、以前のバージョンの標準(C89、C95、C99、C11、C17)を説明するドキュメント、将来のバージョンの標準のドラフト、およびテクニカルスペシフィケーションも含まれています。すべてのバージョン固有のドキュメントには、適切にラベル付けする必要があります。
さまざまなC標準の改訂版は以下で見つけることができます。
- C2y
- 最新の無料作業ドラフトはn3467 (2025-02-09) です。
- C23
- 公式のC23標準はISOから購入できます。
- ドラフトN3220 (2024-02-22) は、編集上の修正を除いてC23と同等です。
- C17
- C17標準は撤回され、ISOからは入手できなくなりましたが、ANSIから購入できます。
- 最終ドラフト標準C17 FDISは無料で入手できます。
- C11
- C11標準は撤回され、ISOからは入手できなくなりましたが、ANSIから購入できます。
- C11作業ドラフトN1570 (2011-04-12) は無料で入手でき、最終C11標準とは最小限の違いしかありません。
- C99
- C99標準は撤回され、ISOからは入手できなくなりましたが、ANSIから購入できます。
- 最終C99:TC3作業ドラフトN1256 (2007-09-07) は無料で入手でき、3つのすべてのテクニカルコレギウムを含む最終C99標準とは最小限の違いしかありません。
- C95
- C90修正AMD1は撤回され、ISOからは入手できなくなりましたが、Intertek Informから購入できます。
- C89/C90
- C90標準は撤回され、ISOからは入手できなくなりましたが、Intertek Informから購入できます。
- 最終ドラフト(X3J11/90-013 (ANSI番号付け) または n119 (WG14番号付け))は一般公開されていませんが、最終公開レビュードラフトX3J11/88-090 (1988-05-13)は入手でき、最終C89標準とは最小限の違いしかありません。
このリファレンスはC++標準のどの改訂版に準拠していますか?
C++23は最近発行されたC++標準であり(C++26が進行中)、それがこのサイトの主な焦点です。
ただし、より完全なリファレンスを提供するために、以前のバージョンの標準(C++98、C++03、C++11、C++14、C++17、C++20、およびC++23)を説明するドキュメント、および将来のバージョンの標準(C++26、およびテクニカルスペシフィケーション)のドラフトドキュメントも含まれています。すべてのバージョン固有のドキュメントには、適切にラベル付けする必要があります。
さまざまなC++標準自体は以下で見つけることができます。
- C++26
- 最新の無料作業ドラフトはn5001 (2024-12-17)です。
- 最新バージョンは、ソース形式でcplusplus/draft、ブラウズ可能な形式でeel.is/c++draftで見つけることができます。
- C++23
- 公式のC++23標準はISOから直接購入できます。
- C++23の最終ドラフトはN4950 (2023-05-10) です。
- C++20
- C++20標準は撤回され、ISOからは入手できなくなりました。これはANSIなどの加盟団体から購入できます。
- C++20の最終ドラフトはN4860 (2020-03-31) です。
- C++20以降の作業ドラフトN4868 (2020-10-18) が入手可能で、C++20以降のN4867編集上の修正のみが含まれています。
- C++17
- C++17標準は撤回され、ISOからは入手できなくなりました。これはANSIなどの加盟団体から購入できます。
- C++17の最終ドラフトはN4659 (2017-03-21) です。
- C++14
- C++14標準は撤回され、ISOからは入手できなくなりました。ANSIや他の加盟団体を通じて購入できます。
- 無料のC++14最終ドラフト (n4140) が入手可能で、それと標準 (n4141) との差分は主に誤字の修正とバージョン番号の変更で構成されています。
- C++11
- C++11標準は撤回され、ISOからは入手できなくなりました。
- 無料のC++11作業ドラフトN3337が入手可能です。(作業ドラフトとC++11標準との違いN3338は軽微です。)
- C++03
- C++03標準は撤回され、ISOからは入手できなくなりました。
- C++98
- C++98標準は撤回され、ISOからは入手できなくなりました。
標準とcppreferenceの間に違いがあるのはなぜですか?
Cppreferenceはプログラマによって維持されており、ISOの歴史家ではなくプログラマにとって役立つことを目指しています。プログラマとして、私たちは-std=c++20を使用するとき、またはコンパイラの同等のフラグを使用するときに何を得るかを気にします。その結果、私たちのドキュメントは、各CおよびC++標準改訂版と、その改訂版に適用される後続のすべてのバグ修正および明確化を含む、仮説上の完全かつ正しい実装に関するものです。利用可能な場合、私たちは標準委員会のガイダンスと現在の実装を、そのような仮説上の実装が何をするかの証拠として使用します。
オフライン閲覧に適したバージョンのサイトはありますか?
はい、こちらから入手できます。
いくつかのアプリでも、このサイトのコンテンツをオフラインで閲覧できます。例えば、docsetベースのアプリとして、MacおよびiOS用のDash、Windows用のVelocity、Linux用のZeal、Android用のLovelyDocsがあります。
サイトをもっと見やすくできますか?
デフォルトの明るいテーマよりもダークテーマの方が読みやすいかもしれません。または、DarkReaderのようなブラウザ拡張機能を試すこともできます。
前述のオフラインのdocsetベースのアプリもダークモードやその他のオプションを提供していますが、リアルタイムでは更新されません。
このサイトの資料で何ができますか?
コンテンツはCreative Commons Attribution-Sharealike 3.0 Unported License (CC-BY-SA) およびGNU Free Documentation License (GFDL) (バージョンなし、不変セクションなし、表紙テキストなし、裏表紙テキストなし) の下でライセンスされています。つまり、ミラーリング、コピー、翻訳など、ほとんどあらゆる方法でこのサイトを使用できます。私たちがお願いするのは、人々が最新のコンテンツをどこで入手できるかを知るために、cppreference.comへのリンクを提供することだけです。それに加えて、変更されたコンテンツは、誰もが変更されたバージョンから利益を得られるように、同等のライセンスの下でリリースされるべきです。
え?これはウィキですか?内容を変更できますか?
もちろんです。間違いを見つけたら、修正してください。ただし、現在このウィキは標準CとC++に限定されているため、コンパイラ固有の拡張機能のような非標準のコンテンツを追加すべきではありません。また、変更を加える際には、適切な標準と二重チェックしてください。何か不明な点がある場合は、議論ページで尋ねることができます。
最近の荒らし行為のため、ほとんどのページの編集は確認済みユーザーに制限されています。確認済みアカウントをお持ちでない場合は、代わりにTalk:Main_Page/suggestionsで変更を提案するか、管理者に連絡してください。
どのように編集できますか?構文規則は何ですか?
このウィキは、MediaWiki、つまりWikipediaプロジェクトと同じウィキシステムを使用しています。MediaWikiのウィキコード構文については、彼らのヘルプページを参照してください。ただし、このウィキのコンテンツのほとんどは、かなり複雑なテンプレートで囲まれています。それらがほとんどの書式設定を行い、繰り返し部分を一箇所に集約するのに役立つため、何かを変更する際に、同じ変更を数十回または数百回行う必要はありません。このウィキで使用されているテンプレートに関するヘルプについては、Help:Templatesを参照してください。
このウィキは一貫したスタイルを持つことを目指しています。ウィキで一貫したスタイルと書式設定を維持するためのスタイルガイドについては、Help:Manual of styleを参照してください。
追加の編集情報については、Cppreference:EditingHelpを参照してください。
ただし、貢献するために複雑なテンプレートや上記のガイドラインを知る必要はありません。コンテンツ自体を書く方が、書式設定を適用するよりもはるかに難しいので、書くときはスタイルを気にしないでください。後で誰かが修正します。
一部のアクセスが多いテンプレートは、荒らし行為防止のため、またはパフォーマンス上の理由からロックされています。このような場合は、議論ページで変更を要求する必要があります。
手伝いたいです。どこから始めればよいですか?
素晴らしい!修正が必要なことの提案を含むいくつかの特殊ページがあります。
このサイトの運営者は誰ですか?
cppreference.comは、世界中のC++愛好家のグループによって作成され、維持されています。このサイトは、2000年の設立以来、完全にコミュニティによってサポートされており、現在のホスティング費用は広告(広告に関する問題はcomments@cppreference.comにご報告ください)、寄付、およびダジャレ満載のC++関連グッズの販売によって部分的に相殺されています。
どのように連絡できますか?
comments@cppreference.comまでご連絡ください。
壊れたリンクを報告する場合は、こちらで報告する方が簡単かもしれません。