[ Dejan Mitrovic @ 28.07.2006. 11:17 ] @
Evo ovako... Imam neku biblioteku pisanu u C-u (ne C++) koju bih da koristim u Delphi-ju, ali bez DLL-a jer me mrzi da ga svaki put isporucujem uz software. Kompajlirani .obj fajl sam uvezao u Delphi pomocu {$L} direktive i, naravno, linker se buni da ne moze da pronadje neke (mnoge) funkcije. Deo problema je resen jednostavnim ukljucivanjem unit-a (za npr mmioOpen), ali Delphi nema jedinice sa malloc, free, memcpy itd. Jedini nacin da resim ovo koji mi je pao na pamet (buduci da sam "veoma iskusan" C programer) je da uradim nesto tipa: Code: void* _RTLENTRY _EXPFUNC my_malloc(_SIZE_T __size) { return malloc(__size); } void* _export _RTLENTRY _EXPFUNC malloc(_SIZE_T __size) { return my_malloc(__size); } E, sad, kako da kazem kompajleru da je funkcija malloc koju poziva my_malloc iz stdlib.h? U Delphiju bih to lako sa stdlib.malloc, u C++ (mislim) ukljucim cstdlib i std::malloc, a kako ovde? Da li mozda postoji neki nacin simuliranja overloadinga u C-u? Onda bi bilo mnogo lakse... E, da, C kod je kompajliran u C++ Builder-u, jer Delphi podrzava OMF format... |