4

netbeans では、新しいフォルダーを作成し、ヘッダー ファイルを追加しています。

次を使用して、新しく作成したフォルダー内のヘッダー ファイルを別のファイルに含めると、次のようになります。

#include "folder1/myheaderFile.h"

コンパイラは、ヘッダー ファイルが見つからないと文句を言います。

エラーは次のとおりです。

main.cpp:31:39: fatal error: folder1/myheaderFile.h: No such file or directory

#include のフォルダー内にヘッダー ファイルを含めたいので、何か方法はありますか?

編集:すべてのフォルダーのメイクファイルを作成する必要がありますか? 別の編集:

When I right clicked on the error its showing
unresolved directive
#include
Analyzed system include paths:
/usr/include/C++/4.6
/usr/include/C++/4.6/x84_64_linux_gnu
/usr/include/C++/4.6/backward
/usr/lib/gnu/x86_64-linux-gnu/4.6/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu
/usr/include
4

1 に答える 1

6

これがあなたの便宜のためです:

指定したインクルードファイルパスは、システム全体のヘッダー用です。ヘッダーはあなたのものですか、それともシステム全体にダウンロード/インストールされていますか?出力にヘッダーのパスが表示されますか?別のフォルダからのフォルダにあるヘッダーを含める場合は、逆方向にトラバースする必要があります。つまり、次のようになります。#include "../folder/header.h"

これが私のシステムの/usr/ local / includeにあるようなシステムフォルダの場合、あなたがしなければならないのは

#include <header.h>

または、サブフォルダにある場合(かなり頻繁に)、

#include <Libname/header.h>

それを指すインクルードパスを設定している限り、機能するはずです。

インクルードパスとディレクトリを設定するには、例を参照してください:http: //zetcode.com/articles/netbeanscdevelopment/ページの終わり近く。

パスをハードコーディングするときは、ヘッダーを含むファイルの現在のパスを考慮する必要があることに注意してください。

または、cmake&make(Netbeansが何を使用しているかわからない)を使用して、すべてを自分で定義することもできます。

フルパスでテストできます。つまり、次のようになります。

#include "/home/user/project/folder/header.h

または、コマンドラインからテストしてインクルードパスを設定することもできます。

それが役に立てば幸い :)

于 2013-02-20T00:00:54.867 に答える