if your structor has virtal functions, disaster comes. e.g code as follow, run it and see what will happen.
typedef struct tagTestStructor
{
virtual void testOut(){ std::cout << "this is a virtual function" << std::endl;}
int m_nVal;
char m_cVal;
}TestStructor;
int _tmain(int argc, _TCHAR* argv[])
{
TestStructor objTest;
memset(&objTest, 0, sizeof(objTest) );
TestStructor* pObjTest = &objTest;
pObjTest->testOut();
}