C++学習ノート27:マルチファイル構造


組織構造
1つのプロジェクトは複数のソースファイルに分割できます.
  • クラス宣言ファイル(.hファイル)
  • クラス実装ファイル(.cppファイル)
  • 類の使用ファイル(main()が存在する.cppファイル)
  • プロジェクトを利用して各ファイルを組み合わせる.
    がいぶへんすう
  • 変数が、定義されたソースファイルで使用できるほか、他のファイルでも使用できる場合、この変数を外部変数と呼ぶ.
  • ファイルの役割ドメインで定義された変数は、デフォルトでは外部変数ですが、他のファイルでこの変数を使用する必要がある場合はexternキーワードで宣言する必要があります.

  • がいぶかんすう
  • すべてのクラスの外で宣言された関数(つまり非メンバー関数)は、ファイルの役割ドメインを持つ.
  • のような関数は、呼び出しの前に参照宣言(すなわち、関数プロトタイプを宣言する)を行う限り、異なるコンパイルユニットで呼び出すことができる.また、関数プロトタイプを宣言したり、関数を定義したりする際にexternで修飾することもでき、その効果は修飾されていないデフォルト状態と同じである.
  • 変数と関数をコンパイルユニットに制限する
    匿名のネーミングスペースの使用:匿名のネーミングスペースで定義された変数と関数は、他のコンパイルユニットに露出しません.構文
    namespace{//                      
    }
    

    標準C++ライブラリ
    標準C++クラスライブラリは、極めて柔軟で拡張性の高い再利用可能なソフトウェアモジュールの集合です.標準C++クラスとコンポーネントは論理的に6種類に分けられます.
  • 入出力クラス
  • コンテナクラスと抽象データ型
  • ストレージ管理クラス
  • アルゴリズム
  • エラー処理
  • 実行環境サポート
  • コンパイル前処理
    #include含む命令#defineマクロ定義命令