2009-07-07 142 views
2

我在Windows XP SP2平台上使用VC++ 6.0。我在我的代码中使用GUID结构。初始化GUID变量

typedef struct _GUID {   // size is 16 
    DWORD Data1; 
    WORD Data2; 
    WORD Data3; 
    BYTE Data4[8]; 
} GUID; 

如何在创建对象时将此结构初始化为零?或者当我创建一个对象时,成员的默认值是什么?

回答

2

使用标准C库:

GUID myGuid; 
memset(&myGuid, 0, sizeof(GUID)); 

或者更多的微软式的方式:

GUID myGuid; 
ZeroMemory(&myGuid, sizeof(GUID)); 
7
GUID newId = GUID_NULL; 

如果你不这样做,这些字段是未初始化的并且包含任何数据在那个位置的记忆中 - 通常称之为垃圾