E-FEnce a C++

Pavel Kankovsky peak na kerberos.troja.mff.cuni.cz
Pondělí Únor 16 16:38:00 CET 1998


On Mon, 16 Feb 1998, Zdenek Pizl, Czech Agriculture University, Prague wrote:

>  chxi se jen zeptat, jak funguje e-fence spolecne s c++ programem. V
> manovejch strankach se mluvi jen o c-programech a jaky fce to zachycuje.
> Zajima me jestli je to funkcni i pro volani new a delete (dynamickou
> alokoaci/destrukci objektu).

pokud to ma autor runtimove knihovny pro c++ v hlave v poradku, tak
je "systemove" new/delete naprogramovano pomoci malloc/free
(predpokladam, ze to je pripad libg++)

jinak staci do programu pridat vlastni definice, napr.:

void *operator new(size_t s) { return malloc(s); }
void operator delete(void *p) { return free(p); }

(btw: historicka zajimavost: bc 3.1 melo na vec svuj nazor a vyzadovalo
dve definice new: jednu s 16bitovym a jednu s 32bitovym parametrem, tu
druhou pouzivalo pro alokaci poli, ale delete bylo jedine, takze obcas
vznikaly zajimave efekty... jeste, ze tyto casy jsou uz (skoro) pryc)

(btw2: nedoporucuji kombinovat pouzivani mmap() a EF_PROTECT_FREE,
protoze to muze mit--kvuli chybce v libefence--necekane nasledky)

--Pavel Kankovsky aka Peak   [ Boycott Microsoft -- http://www.vcnet.com/bms ]



Další informace o konferenci Linux