0

OpenNI の多くの関数は次のように戻ります。

XN_C_API XnInt32 XN_C_DECL  xnVersionCompare (const XnVersion *pVersion1, const XnVersion *pVersion2)

XN_C_API と XN_C_DECL とは何かを知りたいです。ただ好奇心!

4

2 に答える 2

4

戻り値とは何の関係もありません。ソースを見ずに、Windows用にコンパイルするときは次のように思われます。

  • XN_C_APIDLLをコンパイルするか、DLLから関数をインポートするかに応じて、__declspec(dllexport)またはに定義されます。__declspec(dllimport)

  • XN_C_DECL関数の目的の呼び出し規約に定義されます(おそらく__stdcallまたは__cdecl

于 2012-03-07T19:32:08.793 に答える
0

定義を見ていなくても、次のように推測できます。

  • XN_C_APIextern "C"C関数をC++から呼び出すことができるように、C++コンパイラに効果的です。

  • XN_C_DECLWindows によって課される呼び出し規則とエクスポート/インポートの問題を扱います。それは__declspec(ddlexport)or__declspec(dllimport)である可能性があり、 etc が含まれている可能性があり、__stdcalletc についても心配している可能性がありますFAR(ただし、おそらくそれ以上は必要ありません)。

于 2012-03-07T19:34:21.433 に答える