国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
利用Visual C++/MFC開發(fā)Windows程序的優(yōu)勢_C語言教程_C++教程_C語...

利用Visual C++/MFC開發(fā)Windows程序的優(yōu)勢

    MFC借助C++的優(yōu)勢為Windows開發(fā)開辟了一片新天地,同時也借助ApplicationWizzard使開發(fā)者擺脫離了那些每次都必寫基本代碼,借助ClassWizard和消息映射使開發(fā)者擺脫了定義消息處理時那種混亂和冗長的代碼段。更令人興奮的是利用C++的封裝功能使開發(fā)者擺脫Windows中各種句柄的困擾,只需要面對C++中的對象,這樣一來使開發(fā)更接近開發(fā)語言而遠離系統(tǒng)。(但我個人認為了解系統(tǒng)原理對開發(fā)很有幫助)

    正因為MFC是建立在C++的基礎(chǔ)上,所以我強調(diào)C/C++語言基礎(chǔ)對開發(fā)的重要性。利用C++的封裝性開發(fā)者可以更容易理解和操作各種窗口對象;利用C++的派生性開發(fā)者可以減少開發(fā)自定義窗口的時間和創(chuàng)造出可重用的代碼;利用虛擬性可以在必要時更好的控制窗口的活動。而且C++本身所具備的超越C語言的特性都可以使開發(fā)者編寫出更易用,更靈活的代碼。

    在MFC中對消息的處理利用了消息映射的方法,該方法的基礎(chǔ)是宏定義實現(xiàn),通過宏定義將消息分派到不同的成員函數(shù)進行處理。下面簡單講述一下這種方法的實現(xiàn)方法:

    代碼如下

 BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
//{{AFX_MSG_MAP(CMainFrame)
 ON_WM_CREATE()
//}}AFX_MSG_MAP
 ON_COMMAND(ID_FONT_DROPDOWN, DoNothing)
END_MESSAGE_MAP()

 

    經(jīng)過編譯后,代碼被替換為如下形式(這只是作講解,實際情況比這復(fù)雜得多):
 //BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
CMainFrame::newWndProc(...)
{
 switch(...)
 {
  //{{AFX_MSG_MAP(CMainFrame)
  // ON_WM_CREATE()
  case(WM_CREATE):
   OnCreate(...);
  break;
  //}}AFX_MSG_MAP
  // ON_COMMAND(ID_FONT_DROPDOWN, DoNothing)
  case(WM_COMMAND):
   if(HIWORD(wP)==ID_FONT_DROPDOWN)
   {
    DoNothing(...);
   }
  break;
 //END_MESSAGE_MAP()
 }
}

    newWndProc就是窗口過程只要是該類的實例生成的窗口都使用該窗口過程。

    所以了解了Windows的消息機制在加上對消息映射的理解就很容易了解MFC開發(fā)的基本思路了。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Windows編程之MFC窗口程序淺析
VS2010/MFC編程入門之五(MFC消息映射機制概述)
VC++消息映射的思考【轉(zhuǎn)】
使用MFC自定義消息
[轉(zhuǎn)載]追根究底,MFC 六大關(guān)鍵技術(shù)剖析(第六部分)
VC添加自定義消息
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服