友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
深入浅出MFC第2版(PDF格式)-第4部分
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!
篇由Paul Dilascia 所撰的文章Meandering Through the Maze of MFC Message and mand
Routing ,以及Addison Wesley 于1996/06 出版的MFC Internals 一书,也有了相当程度的核
心涉猎,即连前面提及的Programming Windows 95 with MFC 以及Inside Visual C++ 4。0 两本
书,也都多多少少开始涉及MFC 核心。我有一种「德不孤必有邻」的喜悦。
为了维护本书更多的唯一性,也由于我自己又钻研获得了新的心得,本书增加了前版未有的
Runtime Type Information 、Dynamic Creation 等主题,对于Message Mapping 与mand
Routing 的讨论也更详细得多,填补了上一版的缝隙。更值得一提的是, 我把这些在MFC 中
极神秘而又极重要的机制,以简化到不能再简化的方式,在DOS 程序中仿真出来,并且补
充一章专论C++ 的高阶技术。至此,整个MFC 的基础架构已经完全曝露在你的掌握之中,
再没有任何神秘咒语了。
本书从MFC 的运用,钻入MFC 的内部运作,进而application framework 的原理,再至物
件导向的精神,然后回到MFC 的运用。这会是一条迢迢远路吗?
似远实近!
许多朋友曾经与我讨论过,对于MFC 这类application framework,应该挖掘其内部机制到什
么程度?探究源代码,岂不有违「黑盒子」初衷?但是,没有办法,他们也同意,不把那些
奇奇怪怪的宏和指令搞清楚,只能生产出玩具来。对付MFC 内部机制,态度不必像对付
MFC 类别一样;你只需好好走过那么一回,有个印象,足矣。至于庞大繁复的整个application
framework 技术的铺陈串接,不必人人都痛苦一次,我做这么一次也就够了 。
10
…………………………………………………………Page 33……………………………………………………………
林语堂先生在朱门一书中说过的一句话,适足作为我写作本书的心境,同时也对我与朋友
之间的讨论做个总结:
「只用一样东西,不明白它的道理,实在不高明」。
祝各位胸中丘壑自成!
侯俊杰 新竹1996。08。15
P。S。 愈来愈多的朋友在网络上与我打招呼,闲聊谈心。有医师、盲生、北京的作家、香港的
读者、从国中到研究所的各级学生。学生的科系范围广到令我惊讶,年龄的范围也大到令我
惊讶。对于深居简出的作家而言,读者群只是一个想象空间,哦,我真有这么多读者吗?! 呵
呵,喜欢这种感觉。回信虽然是一种压力,不过这是个甜蜜的负担。
你们常常感谢我带给你们帮助。你们一定不知道,没有你们细心研读我的心血,并且热心写
信给我,我无法忍受写作的漫漫孤寂!我可以花三天的时间写一篇序,也可以花一个上午设
计一张图。是的,我愿意!我对拥有一群可爱可敬的读者感到骄傲。
11
…………………………………………………………Page 34……………………………………………………………
12
…………………………………………………………Page 35……………………………………………………………
目 錄
目錄
( 表示本版新增內容)
*
* 讀者來函 / 1
* 第版序 / 5
第版序 / 7
目錄 / 13
第0章 你定要知道(導讀) / 27
這本書適合誰 / 27
你需要什麼技術基礎 / 29
你需要什麼軟硬體環境 / 29
讓我們使用同種語言 / 30
本書符號習慣 / 34
磁片內容與安裝 / 34
範例程式說明 / 34
與前版本之差異 / 39
如何聯絡作者 / 40
第篇 勿在浮砂築高臺 本書技術前提
/ 001
第1章 Win32 程式基本觀念/ 003
Win32 程式開發流程/ 005
需要什麼函式庫(。LIB ) / 005
需要什麼表頭檔( )
。H / 006
13
…………………………………………………………Page 36……………………………………………………………
深入湷觥 FC
以訊息為基礎,以事件驅動之 / 007
個具體而微的 Win32 程式 / 009
程式進入點 WinMain / 015
視窗類別之裕耘c視窗之誕生 / 016
訊息迴路 / 018
視窗的生命樞 視窗函式
/ 019
訊息映射(Message Map )雛形 / 020
對話盒的咦鳌 / 022
模組定義檔(。DEF ) / 024
資源描述檔( )
。RC / 024
Windows 程式的生與死 / 025
閒置時間的處理:OnIdle / 027
* Console 程式 / 028
* Console 程式與DOS 程式的差別 / 029
* Console 程式的編譯聯結 / 031
* : 程式設計 /
JBACKUP Win32 Console 032
* : 程式設計 /
MFCCON MFC Console 035
* 什麼是 C Runtime Library 的多緒版本 / 038
行程與執行緒(Process and Thread ) / 039
核心物件 / 039
個行程的誕生與死亡 / 040
產生子行程 / 041
個執行緒的誕生與死亡 / 044
* 以 _beginthreadex 取代CreateThread / 046
執行緒優先權(Priority ) / 048
* 多緒程式設計實例 / 050
14
…………………………………………………………Page 37……………………………………………………………
目 錄
第2章 C++ 的重要性伲 / 055
類別及其成員 談封裝( )
encapsulation / 056
基礎類別與衍生類別 談繼承( )
Inheritance / 057
this 指標 / 061
虛擬函式與多型(Polymorphism ) / 062
類別與物件大解剖 / 077
Object slicing 與虛擬函式 / 082
靜態成員(變數與函式) / 085
C++ 程式的生與死:兼談建構式與解構式 / 088
* 種不同的物件生存方式 / 090
* 所謂 〃Unwinding〃 / 092
執行時期型別資訊(RTTI ) / 092
動態生成(Dynamic Creation ) / 095
異常處理(Exception Handling ) / 096
Template / 100
Template Functions / 101
Template Classes / 104
Templates 的編譯與聯結 / 106
第3章 MFC 六大關鍵技術之模擬 / 109
MFC 類別階層 / 111
Frame1 範例程式 / 111
MFC 程式的初始化過程 / 115
Frame2 範例程式 / 118
RTTI (執行時期型別辨識) / 122
CRuntimeClass 與類別型錄網 / 123
DECLARE_DYNAMIC / IMPLEMENT_DYNAMIC 巨集 / 125
Frame3 範例程式 / 132
15
…………………………………………………………Page 38……………………………………………………………
深入湷觥 FC
(型別辨識)
IsKindOf / 140
Frame4 範例程式 / 141
Dynamic Creation (動態生成) / 143
DECLARE_DYNCREATE / IMPLEMENT_DYNCREATE 巨集 / 144
Frame6 範例程式 / 151
Persistence (永續生存)機制 / 160
Serialize (資料讀寫) / 161
DECLARE_SERIAL/IMPLEMENT_SERIAL 巨集 / 167
洠в泄犂淌健 / 170
Message Mapping (訊息映射) / 170
Frame7 範例程式 / 181
mand Routing (命令繞行) / 191
Frame8 範例程式 / 203
* 本章回顧 / 216
第篇 欲善工事先利其器-
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!