2

我需要一些來自/ for DLL的舊C++代碼的幫助,這是用borland C++ builder 6編寫的,我必須在VS2008或VS2010中重新編譯它。由於我們所有的測試都顯示MSVC優化代碼的速度比速度提高了4倍以上,所以Borland的構建者可以做到......而且我們的軟件具有實時的要求。 我已經重寫和/或包裝了很多VCL代碼與std或win32api函數主要爲AnsiString類,事件,線程,列表類,所以大多數代碼編譯和工作良好...將DLL代碼從Borland C++ Builder 6移植到Microsoft Visual C

但我來到屏障我不知道如何獨自解決,所以我懇求你提供任何幫助。

我不知道如何實現可以模擬__closure關鍵字的東西。我知道這是borland C++ builder特定的關鍵字,並允許程序員使用泛型指針指向成員函數。我知道這是不可能的本地C++,因爲指向成員函數的指針不是常規的函數指針,但像member_function_pointer=function_pointer-this。所以__closure必須保存thismember_function_pointer。但我不知道如何實現這一點。也不會如何做到這一點,因爲我們的代碼中的類彼此不認識,這會違反良好的面向對象編程原則的所有原則。

對不起,我生鏽的英語:S 謝謝你的時間和幫助。

回答