簡體   English   中英

如何使 WndProc 內聯?

[英]How to make WndProc inline?

是否有可能,如果有,如何使 WndProc 內聯?

也就是說,我想在 WinMain 中處理 Windows 消息 WM_...,以避免看似不必要的函數調用。

謝謝你。

您不能內聯窗口過程。 這是設計使然。

在注冊窗口類時,您可以很容易地看到架構限制。 這是通過調用RegisterClassExW並傳遞WNDCLASSEXW結構來完成的。 該結構需要一個有效的lpfnWndProc 您不能獲取內聯函數的地址。

還有其他方面要求窗口過程是一個實際的函數。 例如,存儲窗口過程地址用作定制點並允許子類化控件,例如調整標准控件的行為。

您無法避免函數調用。 如果要限制變量的范圍,可以將 lambda 表達式的結果分配給lpfnWndProc成員。 Visual Studio 確保合成正確的函數簽名。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM