首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> VC >> VC 教學

Visual C++ 與 Delphi/C++Builder 深度比較(一):應用框架與訊息機制

     編輯:VC 教學

應用程式框架對決:MFC vs VCL

Visual C++ 採用 MFC,C++Builder/Delphi 共享 VCL。MFC 早於 Windows 3.x 時代誕生,經年累月極度成熟,但架構落後一個時代。VCL 則為現代設計,支援元件、屬性、事件,委派模型 (Delegate Model) 以虛函數封裝 Windows 訊息,極為直觀。MFC 仍沿用「巨集對應表」 (BEGIN_MESSAGE_MAP) 封裝訊息,雖有 ClassWizard 自動生成,但不如 VCL 自然。VCL 為此擴展 C++ 語言 (關鍵字 __property, __event 等),生成碼簡潔,代價是非標準,無法被其他編譯器編譯;MFC 僵在原始碼層,兼容性極佳——任何符合 ANSI 的編譯器均可編譯 MFC 程式。C++Builder 3+ 能直接編譯 VC 專案,歸功於 MFC 的標準寫法;反之 VC 無法編譯 C++Builder 程式碼。

元件支援與 RAD 效率

VCL 元件面板豐富,拖放即用,極適合 RAD。VC 雖元件數量不少,但需經 AppWizard 產生「包裝類」才能使用,繁瑣不直觀,對 RAD 開發者吸引力不足。許多開發者選擇 C++Builder 正是為了那一大堆開箱即用的元件。

異常處理與穩定性

VCL 內建異常處理機制,理論上優於 MFC;但早期版本存在 Bug,會無故拋出異常。MFC 經歷無數實戰洗禮,功能全面、極度穩定,Bug 極少且有第三方工具輔助規避。對專業開發者,「穩定壓倒一切」往往是選擇 VC 的關鍵理由。C++Builder 自帶範例程式都有錯誤,Inprise 仍有漫漫長路要走。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved