class Base {
public:
~Base() { }
virtual void ZeroBuffer() { }
};
class Derrived : public Base {
public:
Derrived() { m_bufferPtr = new char[1024]; }
~Derrived() { delete[] m_bufferPtr; }
void ZeroBuffer()
{
size_t size = sizeof(char) * 1024;
memset(m_bufferPtr, 0, size);
}
private:
char* m_bufferPtr;
};
int main()
{
Base * obj = new Derrived;
obj->ZeroBuffer();
delete obj;
return 0;
}