2

私は .lib ファイルのリンクを試みており、C++ コンソール アプリケーション プロジェクトにヘッダー ファイルも含めています。他のプロジェクトの 1 つから C++ ヘッダー ファイルをコピーし、Header Filesコンソール アプリケーション プロジェクトのフォルダーの下に貼り付けました。スクリーンショットはこちら: http://i.imgur.com/JFFIn.png

ただし、コードにヘッダーを としてインクルードしようとする#include...と、ヘッダー ファイルの名前でインテリセンスが得られません。(targetver.h、stdafx.h、および Debug フォルダーしか表示されません) C++ コンソール アプリケーション プロジェクトのプロパティで Project フォルダー自体
を指定しようとしAdd additional include directoriesましたが、うまくいかず、ファイルがまだ表示されません。

ヘッダー ファイルの名前を と書くと#include "DllTest.h"、次のようなエラーが表示されます。
Cannot open include file: 'DLLTest.h': No such file or directory c:\users\ht\documents\visual studio 2010\projects\dlltest\dlltestconsole\dlltestconsole.cpp

ヘッダー ファイルはどのようにここに含まれているので、表示されますか? DLLTest.hadd a new item > Header Fileという名前を付けて、ここにヘッダー ファイルの内容をコピー ペーストすると、正常に表示されます。Header Filesコピーされてフォルダーに貼り付けられたヘッダーファイルは、コードにどのように表示されますか?

4

1 に答える 1

2

C++ プロジェクトでは、ソリューション エクスプローラーでフォルダーのように見えるものは、実際にはフォルダーではなく、フィルターです。これらは、IDE でプロジェクト アイテムを整理するために使用できる UI のみのエンティティです。ただし、ディスク上のアイテムの構造や場所を反映するものではありません。ディスク上の任意の場所からソリューション内の任意のフィルターにファイルを追加できます。

コンパイラはこれらのフィルタについて何も知りません。ディスク上に存在するファイルについてのみ認識します。

あなたの場合、ファイルはプロジェクトフォルダーにありません。次のいずれかが必要です。

  • ファイルをプロジェクト フォルダーにコピーし、そこからプロジェクトに追加します (ソリューションを右クリックし、既存の項目を追加)、または

  • ファイルがある場所からファイルを追加し、その場所をプロジェクト プロパティの [追加のインクルード ディレクトリ] プロパティに追加します。

ファイルをコピーしてプロジェクトに貼り付けるときに、IDE が自動的にファイルをプロジェクト ディレクトリに移動する方法を知りません。C++ プロジェクト システムは、C# や VB で使用されるプロジェクト システムとは根本的に異なります。

于 2012-05-03T20:18:26.193 に答える