12,982
回編集
細 (Wiki がページ「テクニック - C++(EXE)からC Sharp(DLL)の関数を呼び出す」を「C++の応用 - C Sharp DLLの使用」に、リダイレクトを残さずに移動しました) |
|||
441行目: | 441行目: | ||
pause | pause | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<br> | |||
下表に、C#のデータ型、C++のデータ型、VARTYPEの関係を示す。<br> | |||
<br> | |||
C++から引数を指定する場合、および、C# DLLからの戻り値を取得するために、VARIANT型を使用する必要がある。<br> | |||
そのため、C#、C++、VARIANT型の関係を理解する必要がある。<br> | |||
<center> | |||
{| class="wikitable" | style="background-color:#fefefe;" | |||
|- | |||
! style="background-color:#66CCFF; width: 200px;" | C++ | |||
! style="background-color:#66CCFF; width: 200px;" | C# | |||
! style="background-color:#66CCFF; width: 200px;" | VARTYPE | |||
! style="background-color:#66CCFF; width: 200px;" | 使用するメンバ | |||
|- style="text-align: center;" | |||
| SHORT (short) || short (System.Int16) || VT_I2 || iVal | |||
|- style="text-align: center;" | |||
| INT (int)<br>LONG (long) || int (System.Int32) || VT_I4 || lVal | |||
|- style="text-align: center;" | |||
| BOOL (long) || bool (System.Boolean) || VT_BOOL || boolVal | |||
|- style="text-align: center;" | |||
| LPCSTR (const char *)<br>LPCWSTR (const wchar_t *) || string (System.String) || VT_BSTR || bstrVal | |||
|- style="text-align: center;" | |||
| FLOAT (float) || float (System.Single) || VT_R4 || fltVal | |||
|- style="text-align: center;" | |||
| DOUBLE (double) || double (System.Double) || VT_R8 || dblVal | |||
|} | |||
</center> | |||
<br><br> | <br><br> | ||