Non so molto dei ctypes, solo recentemente ha iniziato a lavorarci.Come passare il puntatore di nuovo in ctypes?
Ho una semplice funzione in dll di tipo C che restituisce un puntatore alla stringa generata dinamicamente.
Sta funzionando bene, ma, poiché ho allocato manualmente la memoria per la stringa, dovrei liberarlo dopo l'uso.
ho qualcosa di simile:
extern "C" char* DLL_EXPORT func(const char* str1, const char* str2)
{
return getSomeString(str1, str2);
}
// Goal is to call this function correctly from Python.
extern "C" void DLL_EXPORT freeMem(void *mem)
{
if(mem!=NULL)
delete mem;
}
Ma non ho alcuna idea, come posso passare ricevuto puntatore indietro per l'eliminazione in Python?
Vedi http://stackoverflow.com/questions/7398575/deallocating-memory-for-objects-returned-to-python-through-ctypes. –