C++程序員打交道最多的就是MFC了,這個我不想多說,說來都是淚(C#年年更新,C++十年才出了一個featurePack還不是很好用)
現在另外兩支隊伍越來越龐大(所謂窮則思變,呵呵),一是WTL,關于它的種種傳說可以參考WTL中文教程,里面講的很詳細,這里我想說的是為什么使用WTL:
傳說WTL是微軟內部所使用的界面框架程序,原因是高效,簡潔,實際也是如此,WTL的程序內的內存占用比MFC小的多,而且WTL內建了對于可縮放對話框的支持(支持控件停靠哦),對于多文檔以及視類的支持更是MFC望塵莫及的,但是WTL也有其自身的缺點,比如開發(fā)文檔少,尤其是中文的,向導不夠聰明(誰用誰知道,呵呵),換句話說,用WTL就意味著多敲一些代碼,不過這個可以有一些第三方工具緩解(還是那句話,窮則思變),如WTL helper,還有國產的WTL helper,還有國產的VFC,兩者都是開源軟件,放心使用,建議有意開發(fā)WTL的程序員先打好基本功,因為這個基于ATL的這個鐵娘子不是誰都可以駕馭的哦,如果對程序大小要求不是太苛刻的話,還是拿MFC將就吧
其二就是我最近很感興趣的WxWidget, 這款框架最大的優(yōu)勢就是真正意義上的跨平臺,其注意真正兩個字,因為在我看來所謂的java跨平臺不過是幌子,有種連JVM也跨平臺試試(JAVA擁護者別拍我哦,其實JAVA還是在OO領域很強大的),那真正二字就是因為,WxWidget提供了在本機源碼級的跨平臺,從此你在讓客戶使用你軟件的時候不必再說:“你必須給我安裝×××虛擬機或×××Framwork”,在一個平臺下編譯的代碼,不用做任何更改,在另一個平臺下就可以編譯通過并且發(fā)布,這豈不美哉,而且WxWidget所使用的界面元素幾乎都取自本地計算機,就是說你的見面客氣來很有親和力,最終發(fā)布的二進制代碼文件愛你無論是靜態(tài)還是動態(tài)鏈接都要比GTK之流小很多(見圖表)。有興趣一試的可以看看WxWidget開發(fā)環(huán)境配置

說了這么多,總結如下,三種平臺各有所長,如果你是windows程序員,那么WxWidget對你而言沒有多大意義,如果你剛開始接觸C++,那WTL這個高品位新娘也許會讓你忙的團團轉,呵呵,大家自己斟酌吧