Borland C++ビルダー6で書かれたDLLの古いC++コードのヘルプが必要ですが、VS2008またはVS2010で再コンパイルする必要があります。私たちのテストでは、MSVCがコードを4倍以上(スピード)で最適化すると、Borland Builderはそうしていることを示しています...そして、私たちのソフトウェアにはリアルタイムの要件があります。 多くのVCLコードをstdまたはwin32api関数で主にAnsiString、イベント、スレッド、リストのクラスに書き直しましたので、ほとんどのコードがコンパイルされてうまく動作します...DLLコードをBorland C++ Builder 6からMicrosoft Visual Cに移植
バリア私は一人で解決する方法がわからないので、何か助けを求めて懇願しています。
私は__closure
というキーワードをシミュレートできるものをどのように実装することができますか?私はこれがBorland C++ビルダー固有のキーワードであることを知っており、プログラマーはメンバー関数への汎用ポインターを使用できます。私はこれがネイティブC++では可能ではないことを知っています。メンバー関数へのポインタは通常の関数ポインタではありませんが、member_function_pointer=function_pointer-this
のようなものです。したがって__closure
はthis
とmember_function_pointer
を保存する必要があります。しかし、私はこれを達成する方法を知らない。私たちのコードのクラスがお互いを知らず、素晴らしいオブジェクト指向のプログラミング原則のすべての原則に違反するので、これはどのように可能でもありません。
私の錆びた英語は申し訳ありません。S ありがとうございました。
ありがとうございます、私はそれを調べます... – na1pir