C++ のソースコードは、*.cpp ファイルとヘッダファイル *.h に記述されます。これらは、それぞれ、役割分担があるわけですが、C++ のコンパイルのメカニズム的には、ヘッダファイル *.h は、#include によって、*.cpp にインクルードされるということが決まっているだけで、その記述方法のポリシーについては、完全にプログラマーに任されています。このため、ヘッダファイルには、*.cpp に記述できるものは何でも記述できてしまうのですが、だからといって何を書いても良いというわけではなく、正しいポリシーに従って記述しないと、コンパイルエラーの山に悩まされるということになります。 そこで、C++ を正しく楽しむためには、ヘッダの記述方法について、そのポリシーを明確にしておくことは大いに意味があるでしょう。 ヘッダファイルの作り方は、ヘッダの中にテンプレート関連のコードを入れるかど
とある製品のソースコードを眺めていたときに疑問に思って調べたことをメモします。 C言語で通常、大域変数(グローバル変数)を複数のソースファイルで共有する場合、共通でincludeするヘッダファイルにextern int abc;みたいに書いて、ソースファイルのいずれか1つに実体をint abc;みたいに書くと(私は)思っていたのですが、その製品のソースではヘッダファイルの方にint abc;とあり、各ソースファイルにextern int abc;という風に書かれています。 一瞬、それぞれのモジュール(ソースファイル)に別々の実体が存在するのかな、と思ったのですが、実際のその製品の動きを見てみるとちゃんと変数を共有して使っているようです。 私のいままでの理解が間違っているかもしれないので調べようと思ったのですが、C言語の規約を調べるのも億劫だし、環境依存かもしれないので、とりあえずサンプルを
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く