1. ホーム
  2. c++

[解決済み] ビジュアルC++を使用しています。#同じソリューションで他のプロジェクトのファイルをインクルードする

2022-09-23 06:20:11

質問

Visual C++ を使用してゲームに取り組んでいます。いくつかのコンポーネントを別々のプロジェクトで持っており、プロジェクトの依存関係を設定しました。別のプロジェクトからのヘッダーファイルをどのように #include するのでしょうか。あるプロジェクトのクラスを別のプロジェクトで使用する方法については、まったくわかりません。

どのように解決するのですか?

コンパイラの設定

ヘッダファイルを#includeしたいプロジェクトで 別の プロジェクトで、ヘッダーファイルのパスを 追加インクルードディレクトリ セクションに追加する必要があります。

プロジェクトの設定にアクセスするために

  1. プロジェクトを右クリックして、[プロパティ] を選択します。
  2. 構成プロパティ->C/C++->全般]を選択します。
  3. Additional Include Directories]でパスを設定します。

インクルード方法

への ヘッダファイルをインクルードする を使用するには、コードに次のように記述するだけです。

#include "filename.h"

ここでパスを指定する必要がないことに注意してください。なぜなら、すでにAdditional Include Directoriesにディレクトリを含めているので、Visual Studioはそれをどこで探すか知っています。

プロジェクトの設定ですべてのヘッダーファイルの場所を追加したくない場合は、あるポイントまでのディレクトリをインクルードし、そのポイントからの相対的な#includeを行うことができます。

// In project settings
Additional Include Directories    ..\..\libroot

// In code
#include "lib1/lib1.h"    // path is relative to libroot
#include "lib2/lib2.h"    // path is relative to libroot

リンカの設定

静的ライブラリ (すなわち .lib ファイル) を使用する場合、リンカリング時にシンボルがリンクされるように、リンカの入力にライブラリを追加する必要があります (そうしないと未解決のシンボルが表示されます)。

  1. プロジェクトを右クリックし、[プロパティ] を選択します。
  2. 構成プロパティ->リンカ->入力]を選択します。
  3. Additional Dependenciesにライブラリを入力します。