一部の C++ メソッドを公開する共有ライブラリを作成しようとしています。
extern "C" リンケージを使用してメソッドを C 関数として公開するラッパーを作成するだけです。
対応する C 関数内で、クラスのオブジェクトを作成し、適切なメソッドを呼び出します。
私が抱えている問題は、テンプレートを引数として使用する公開する必要があるメソッドの一部です。
例: C++:
class myclass {
template <typename T>
void write(int addr, T data);
void get_data()
}
C ラッパー:
void get_date() {
myclass obj;
obj.get_data();
}
他のメソッドを公開するにはどうすればよいですか?
- C ラッパー関数で typeid 演算子を使用して、引数の型を判別できますか?
- これに関する他のより良いアイデアはありますか?