13,002
回編集
(→概要) |
(→概要) |
||
11行目: | 11行目: | ||
|- | |- | ||
| C++/CLIを使う || 最も簡単<br>VisualStudioのIntelliSenseも使用可能 || プロジェクトの設定で[CLIを使う]に変更する必要がある。 | | C++/CLIを使う || 最も簡単<br>VisualStudioのIntelliSenseも使用可能 || プロジェクトの設定で[CLIを使う]に変更する必要がある。 | ||
|- | |- | ||
| .NET DLLExportを使用して、<br>C# DLLのメソッドをエクスポートする || [CLIを使う]に変更しなくてよい<br><code>GetProcAddress</code>関数が使用できるため、<br>よく知られた方法で関数を呼び出す事が出来る || C# DLL側のソースコードが無い場合は利用できない。 | | .NET DLLExportを使用して、<br>C# DLLのメソッドをエクスポートする || [CLIを使う]に変更しなくてよい<br><code>GetProcAddress</code>関数が使用できるため、<br>よく知られた方法で関数を呼び出す事が出来る || C# DLL側のソースコードが無い場合は利用できない。 | ||
|- | |- | ||
| C# DLLに対するC++/CLIのラッパーDLLを作成して、<br>C++ EXEから使う || [CLIを使う]に変更しなくてよい<br>COMを使用しない場合において、<br>元のプロジェクトの設定を変更したくない場合に使用可能 || やり方がスマートではない。 | | C# DLLに対するC++/CLIのラッパーDLLを作成して、<br>C++ EXEから使う || [CLIを使う]に変更しなくてよい<br>COMを使用しない場合において、<br>元のプロジェクトの設定を変更したくない場合に使用可能 || やり方がスマートではない。 | ||
|- | |||
| Monoを使う || C++実行ファイルとC#ライブラリの2つを作成するだけでよい。<br><u>Linuxでも使用可能</u> || Monoをインストールする必要がある。<br><br>C++の実行ファイルにおいて、Monoに関連するヘッダファイルをインクルードして、<br>C#ライブラリを呼び出す。<br> | |||
|- | |- | ||
| C# DLLをCOM参照可能にする || [CLIを使う]に変更しなくてよい || C++ EXEのコード量が増えて面倒である。 | | C# DLLをCOM参照可能にする || [CLIを使う]に変更しなくてよい || C++ EXEのコード量が増えて面倒である。 |