opensslライブラリは、独自のBIOを作成する方法を提供します。本質的に、opensslライブラリが使用するルーチンの読み込み、書き込み、作成、破棄などのための関数ポインタの構造体をロードします。非C++関数呼び出しのC++クラスメソッドの関数アドレスを設定する方法は?
私はこの機能をC++クラスにラップしようとしています。
BIO_meth_set_read(pBIOMethod, my_function_for_read);
質問:OpenSSLは、それは同様に、使用する構造の関数ポインタを設定するためのルーチンを持っている私はmy_function_for_readのクラスメソッドを使用できますか?つまり、クラスメソッドのアドレスは、Cベースの外部ライブラリで通常の関数として呼び出すことができますか?
私はそのクラスメソッドのアドレスを取る場合、クラスvtableが使用されているかどうかはわかりません。
おかげで、 -Andres
Cライブラリのクラスのメソッドを呼び出しますか?もしそうなら、あなたはCがクラスインスタンスを認識していないのでできません。しかし、クラスの静的メソッドを呼び出すことができます。とにかく、このテクニックをチェックしてください。http://stackoverflow.com/questions/14815274/how-to-call-a-c-method-from-c – Dom