用戶端區塊攔截函式
如果您要驗證或報告儲存在 _CLIENT_BLOCK 區塊裡的資料內容,您可以撰寫符合這個目的的函式。 您所撰寫的函式,必須與下列在 CRTDBG.H 裡定義的原型類似:
void YourClientDump(void *, size_t)
換句話說,攔截函式應該接受配置區塊一開頭的 void 指標,以及表示配置大小的 size_t 型別值,並且傳回 void。 除此之外,其他的內容則由您決定。
一旦您使用 _CrtSetDumpClient 來安裝攔截函式,每一次 _CLIENT_BLOCK 區塊傾印時都會呼叫它。 然後您可以使用 _CrtReportBlockType 來取得傾印區塊的類型或子類型的資訊。
您傳入 _CrtSetDumpClient 的函式指標是定義在 CRTDBG.H 裡的 _CRT_DUMP_CLIENT 類型:
typedef void (__cdecl *_CRT_DUMP_CLIENT)
(void *, size_t);