Qt での C++ プログラミングは初めてです。質問の一部または一部にお答えいただければ、大変助かります。ありがとうございます。
「.lib」ファイルでのみ提供されるため、外部ライブラリを静的として使用しています。stackoverflow Web サイトの助けを借りて正しくリンクしました。ライブラリに関連付けられたヘッダー ファイルもあります。main.cpp にヘッダー ファイルを含めました。ヘッダー ファイルを参照することで、関数のシグネチャを取得できます。私の質問は、外部ライブラリから関数にアクセスするにはどうすればよいですか?
たとえば、main.cpp で使用しようとしている単一の関数を次に示します。
==> QRETURN Quickfind(char *device, unsigned long length);
int main (int argc, char *argv[]{
// I have declared like this by copying the exact function signature with added extern
extern QRETURN Quickfind(char *device, unsigned long length);
cout << device << " and " << length << endl;
ただし、これにより、デバイスと長さがこのスコープで宣言されていないというエラーが表示されます。したがって、関数の前にパラメーターを宣言して変更します。
int main (int argc, char *argv[]{
char *device = NULL;
unsigned long length = NULL;
extern QRETURN Quickfind(char *device, unsigned long length);
cout << device << " and " << length << endl;
これら 2 つのパラメーターが関数に渡されることを期待していましたが、明らかにそうではありませんでした。また、宣言の直後に関数を使用すると、次のようになります。
int main (int argc, char *argv[]{
char *device = NULL;
unsigned long length = NULL;
extern QRETURN Quickfind(char *device, unsigned long length);
Quickfind(*device, length);
cout << device << " and " << length << endl;
これにより、'Quickfind@8' エラー メッセージへの未定義の参照が表示されます。
関数に正しくアクセスする方法と、外部の静的ライブラリからのその使用方法について、誰かが私に見せたり、ヒントや助けをくれたりできますか? ありがとうございました。