1

クラスを作成しました(たとえば、myclass.h / cpp)。いろいろなところからクラスを利用したいです。したがって、これらのファイルをフォルダー(C:\ cpp_includeなど)に配置し、コードがどのフォルダーからでもそれらを含めたいと思います。クラス(たとえば、main.cpp)を使用するコードがあります。main.cppに、myclassを含めます。

#include "myclass.h"

.proファイルとnmakeを使用してコンパイルします。.proファイルで、フォルダーを次のように指定します。

INCLUDEPATH += C:\cpp_include

nmakeを使用してコードをコンパイルすると、myclass.hが適切に含まれていますが、myclass.cppがコンパイラーによって検出されていないようです。myclass.cppを.proファイルのソースファイルの1つとして指定すると、次のようになります。

SOURCES += main.cpp C:\cpp_include\myclass.cpp

exeファイルは正しくビルドされています。ただし、myclass.hが含まれている場合、つまりmyclass.cppをソースファイルとして設定しなくても、myclass.cppファイルが自動的に検出されるようにしたいと思います。これは可能でしょうか?これは、QtとQwtのクラスで発生するようです(たとえば、QtとQwtの/src/フォルダーにある.h/cppファイル)。私は何かが足りないのですか?

どうもありがとう!

大輔

4

2 に答える 2

0

それはそれがどのように機能するかではありません。.cppは重要ファイルであり、ヘッダーファイル(.h)は他の.cppファイルにコピーされるだけです。したがって、コンパイルのためにmyclass.cppをソースに追加する必要があります。または、ライブラリクラスの場合は、静的ライブラリ(.lib)に一度コンパイルして、リンカーファイルに追加することもできます。しかし、最終的には、それが使用されるプロジェクトに実装を含める必要があります。

于 2011-02-18T18:01:59.350 に答える
0

cpp簡単なテクニックは、ディレクトリにビルドスクリプト(makefiles)を置くことです。ビルドスクリプトを実行して、ディレクトリをトラバースするルールを記述します。機能を分離するこの1つのステップで、ライブラリを使用することもできます。

于 2011-02-18T18:07:25.203 に答える