啟用 STRICT

當您定義 STRICT 符號時,您可以啟用宣告和使用類型時需要更多小心的功能。 這可協助您撰寫更多可攜式程式碼。 此額外小心也會減少您的偵錯時間。 啟用 STRICT 會重新定義特定資料類型,讓編譯器不允許從某個類型指派給另一個型別,而不需要明確轉換。 這對 Windows 程式碼特別有用。 傳入資料類型的錯誤會在編譯時期報告,而不是在執行時間造成嚴重錯誤。

使用 Visual C++ 時,預設會定義 STRICT 類型檢查。

若要逐一檔案定義 STRICT ,請在包含 Windows.h 之前插入 #define 語句:

#define STRICT
#include <windows.h>

定義 STRICT 時, 資料類型 定義會變更,如下所示:

  • 特定控制碼類型會定義為互斥;例如,您將無法傳遞需要HDC類型引數的HWND。 如果沒有 STRICT,所有控制碼都會定義為 HANDLE,因此編譯器不會阻止您使用預期另一種類型的控制碼。
  • 所有回呼函式類型 (,例如對話方塊程式、視窗程式和勾點程式,) 都是使用完整原型來定義。 這可防止您使用不正確的參數清單來宣告回呼函式。
  • 應該使用泛型指標的參數和傳回實值型別會正確地宣告為 LPVOID ,而不是 LPSTR 或其他指標類型。
  • COMSTAT結構會根據 ANSI 標準宣告。

停用 STRICT

STRICT 合規性