Re: LPVOID и вызов деструктора
От: shnyaps  
Дата: 22.06.07 13:31
Оценка:
Здравствуйте, aveSatanas, Вы писали:

S>Доброе время суток.


S>Пример:

S>SomeClass * pClass = new SomeClass();
S>LPVOID lpVoid = pClass;
S>delete lpVoid;

S>В этом случае деструктор класса не вызывается (деструктор виртуальный).

S>Как можно сделать чтобы при удалении LPVOID вызывался деструктор класса?

а такой вариант подходит:

template<typename T>
void release(T* obj) {
delete obj;
}

class SomeClass {
int a;
public:
SomeClass() {};
~SomeClass() {};
};

int main(void)
{
SomeClass* pClass = new SomeClass();
release(pClass);
return 0;
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.