您好,欢迎光临有路网!
参透Delphi/kylix(含盘)/乔林著
QQ咨询:

参透Delphi/kylix(含盘)/乔林著

  • 作者:乔林
  • 出版社:中国铁道出版社
  • ISBN:9787113049201
  • 出版日期:2003年03月01日
  • 页数:884
  • 定价:¥98.00
  • 关注微信领礼券
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    • 出版社
    • ISBN
      9787113049201
    • 作者
    • 页数
      884
    • 出版时间
      2003年03月01日
    • 定价
      ¥98.00
    • 所属分类
    内容提要
    本书特色:清华大学教师力作,包含作者多年编译器研究与程序设计教学经验;深入Object Pascal语言核心,澄清许多容易让人迷惑的概念;披露Delphi/Kylix实现的技术内幕,详细阐释深入编程的思考方法与实现策略;全书131个实例,近70,000行源代码,读者可直接使用的类与子程序近百个……
    目录
    第0章 引 言 1
    0-1 精通Delphi/Kylix的途径 2
    0-2 全书结构 2
    0-3 排版与行文说明 2
    0-4 关于本书配套光盘 3
    0-5 联系作者 3
    **部分 Object Pascal语言精义
    第1章 数据与代码 7
    1-1 数据与代码的基本概念 8
    1-1-1 数据与信息 8
    1-1-2 数据及其解释 9
    1-1-3 数据与地址 9
    1-1-4 程序代码 10
    1-2 数据类型 12
    1-2-1 简单数据类型 13
    1-2-2 用户自定义数据类型 14
    1-2-3 无名类型声明 15
    1-2-4 类型别名 16
    1-3 数据的类型转换 17
    1-3-1 强制类型转换 17
    1-3-2 类型转换的利与弊 19
    1-3-3 变体类型 20
    1-4 程序流程控制 21
    1-4-1 分支 21
    1-4-2 循环 21
    1-5 本章小结 22
    第2章 过程与函数 23
    2-1 结构化程序设计 24
    2-1-1 结构化程序设计的基本原则 24
    2-1-2 子程序 24
    2-1-3 功能分解与逐步求精 26
    2-2 子程序参数 29
    2-2-1 参数语义 29
    2-2-2 值参数 30
    2-2-3 常量参数 30
    2-2-4 变量参数 30
    2-2-5 外部参数 31
    2-2-6 无型参数 31
    2-3 子程序重载与缺省参数 32
    2-3-1 重载 32
    2-3-2 缺省参数 33
    2-4 子程序控制 34
    2-4-1 栈框架的调整 34
    2-4-2 调用规范 36
    2-4-3 参数传递规范 37
    2-4-4 寄存器保护规范与函数的返回值 38
    2-5 递归 39
    2-5-1 递归的基本概念 39
    2-5-2 递归调用时的栈框架调整 41
    2-5-3 递归信任 43
    2-5-4 分形 44
    2-5-5 间接递归 49
    2-6 本章小结 50
    第3章 数据组织 51
    3-1 数据的组织结构 52
    3-1-1 同质数据 52
    3-1-2 异质数据 56
    3-1-3 复杂数据结构 63
    3-2 生存期自管理的数据类型 64
    3-2-1 生存期自管理的基本意义 64
    3-2-2 动态数组 64
    3-2-3 字符串 71
    3-3 指针 74
    3-3-1 指针、地址与数据 74
    3-3-2 指针操作 75
    3-3-3 动态内存分配 78
    3-3-4 指针存储格式 79
    3-3-5 字符指针 80
    3-4 特定数据结构的参数传送 85
    3-4-1 静态数组参数 85
    3-4-2 开放数组参数 86
    3-4-3 可变开放数组参数 88
    3-4-4 字符串参数 90
    3-4-5 指针参数 91
    3-5 本章小结 92
    第4章 程序抽象 93
    4-1 数据抽象与抽象数据类型 94
    4-1-1 数据抽象 94
    4-1-2 链表 95
    4-1-3 抽象数据类型 98
    4-2 线性数据结构 102
    4-2-1 栈 102
    4-2-2 队列 104
    4-2-3 对栈与队列的进一步抽象 106
    4-3 非线性数据结构 109
    4-3-1 符号表 109
    4-3-2 树与二叉树 114
    4-3-3 表达式二叉树 116
    4-4 算法抽象 124
    4-4-1 过程抽象 124
    4-4-2 过程类型 125
    4-4-3 数学函数图像的绘��� 130
    4-4-4 回调函数与映射函数 132
    4-5 本章小结 134
    第5章 类与对象 137
    5-1 类类型 138
    5-1-1 类与对象的基本概念 138
    5-1-2 类类型的声明与实现 138
    5-1-3 类类型的使用 140
    5-1-4 对象成员的访问 142
    5-1-5 根类与继承 142
    5-2 域与方法 143
    5-2-1 域 143
    5-2-2 方法类型 144
    5-2-3 过程方法与函数方法 145
    5-2-4 构造方法 146
    5-2-5 析构方法 149
    5-2-6 类过程方法与类函数方法 150
    5-2-7 隐含参数Self 152
    5-2-8 方法调用规范 153
    5-3 成员可见性 154
    5-3-1 数据封装与成员可见性 154
    5-3-2 缺省成员可见性 156
    5-3-3 类的友元 156
    5-4 类与抽象数据类型 159
    5-4-1 数据封装的肇因 159
    5-4-2 抽象数据类型的类实现 160
    5-4-3 面向对象技术的实质 163
    5-5 对象与对象交互 164
    5-5-1 再论对象 164
    5-5-2 对象标识 166
    5-5-3 对象交互机制 167
    5-5-4 对象引用存在的问题 169
    5-6 本章小结 170
    第6章 继 承 171
    6-1 继承抽象 172
    6-1-1 继承的基本原理 172
    6-1-2 窗体类的继承 174
    6-1-3 VCL与CLX类库层次 176
    6-1-4 VCL与CLX类库分支结构 178
    6-2 方法的继承与重载 180
    6-2-1 方法继承 180
    6-2-2 方法重载 181
    6-2-3 inherited调用 185
    6-3 类操作符 187
    6-3-1 is操作符 187
    6-3-2 as操作符 188
    6-4 对象存储格式 189
    6-4-1 域的存储格式 189
    6-4-2 静态方法的存储格式 191
    6-5 线性数据结构的类实现 192
    6-6 本章小结 194
    第7章 多态性与动态联编 195
    7-1 静态方法与类型适应 196
    7-1-1 静态方法 196
    7-1-2 类型适应 197
    7-2 虚拟方法与动态方法 198
    7-2-1 强制类型转换的缺陷 198
    7-2-2 虚拟方法 199
    7-2-3 动态方法 200
    7-3 方法指示符 201
    7-3-1 方法的重定义 201
    7-3-2 方法的覆盖 202
    7-3-3 方法的重引入 202
    7-3-4 警告指示符 203
    7-3-5 方法指示符的使用原则 203
    7-4 动态联编机制 205
    7-4-1 静态联编与动态联编 205
    7-4-2 多态性 206
    7-5 虚拟方法与动态方法的存储格式 208
    7-5-1 虚拟表结构 209
    7-5-2 动态方法的存储格式 213
    7-5-3 类继承层次下的虚拟表结构 215
    7-6 对象的构造与析构 216
    7-6-1 对象的构造 216
    7-6-2 对象的析构 218
    7-7 抽象方法与抽象类 226
    7-7-1 抽象方法 226
    7-7-2 抽象类 227
    7-7-3 抽象窗体类 228
    7-8 本章小结 230
    第8章 流机制与持久性 231
    8-1 流机制 232
    8-1-1 流抽象 232
    8-1-2 流入流出 234
    8-2 文件流 235
    8-2-1 创建TFileStream流式对象 236
    8-2-2 TFileStream流入流出 236
    8-2-3 数据文件流 239
    8-3 体育彩票辅助分析系统 240
    8-3-1 法律说明 240
    8-3-2 数据结构 241
    8-3-3 中奖记录的流入流出 243
    8-3-4 频率统计 244
    8-3-5 中奖号码分布图 246
    8-3-6 中奖记录的管理 250
    8-4 TPersistent类与持久性 254
    8-4-1 复制构造方法 254
    8-4-2 属性流与域流 256
    8-4-3 对象的串行化 258
    8-5 本章小结 261
    第9章 异常处理 263
    9-1 异常处理的基本概念 264
    9-1-1 异常处理机制 264
    9-1-2 异常保护机制 267
    9-1-3 异常引发机制 269
    9-2 标准异常类 270
    9-2-1 异常类Exception 270
    9-2-2 异常类层次 271
    9-2-3 运行库异常 272
    9-2-4 对象异常 276
    9-2-5 组件异常 278
    9-3 异常的响应与处理 279
    9-3-1 使用异常实例 279
    9-3-2 缺省异常响应 280
    9-3-3 多个异常的处理 280
    9-3-4 异常的重引发 282
    9-3-5 异常嵌套 283
    9-3-6 异常编程方法 284
    9-3-7 TApplication类的异常处理程序 284
    9-3-8 程序异常日志 286
    9-4 自定义异常类 287
    9-4-1 创建自定义异常类 287
    9-4-2 引发自定义异常类 287
    9-5 本章小结 290
    第二部分 用户界面设计方略
    第10章 窗体与窗口 293
    10-1 窗体的基本属性 294
    10-1-1 边框样式与边框图标 294
    10-1-2 窗体位置 295
    10-1-3 窗体与客户区的大小 296
    10-1-4 窗体约束 297
    10-2 字体比例调整 298
    10-2-1 自动调整字体比例 298
    10-2-2 手工调整字体比例 299
    10-2-3 滚动条 300
    10-3 窗体中的组件 300
    10-3-1 组件的Owner属性与Parent属性 300
    10-3-2 组件与控件计数 301
    10-4 窗体事件 302
    10-5 对话框与多窗体的创建与管理 304
    10-5-1 模态窗口与非模态窗口 304
    10-5-2 窗体的创建与释放时机 305
    10-5-3 对话框 307
    10-6 特殊窗体 309
    10-6-1 封面窗口 309
    10-6-2 无标题窗体 310
    10-7 本章小结 313
    第11章 输入处理 315
    11-1 鼠标与键盘输入 316
    11-1-1 鼠标事件 316
    11-1-2 键盘事件 317
    11-2 响应鼠标事件 317
    11-2-1 鼠标事件处理过程的参数 317
    11-2-2 响应OnClick事件 318
    11-2-3 响应OnMouseDown事件 319
    11-2-4 响应OnMouseMove事件 320
    11-2-5 响应滚轮事件 321
    11-3 响应键盘事件 321
    11-3-1 键盘事件处理过程的参数 321
    11-3-2 响应OnKeyPress事件 322
    11-3-3 响应OnKeyDown事件 323
    11-3-4 响应OnKeyUp事件 323
    11-4 跟踪鼠标与键盘 323
    11-4-1 跟踪鼠标事件 323
    11-4-2 跟踪键盘事件 325
    11-4-3 处理虚拟键 325
    11-4-4 虚拟键的散列 328
    11-5 本章小结 331
    第12章 用户界面元素 333
    12-1 菜单栏 334
    12-1-1 菜单与菜单项 334
    12-1-2 菜单项的图标 334
    12-1-3 菜单项的加速键与快捷键 335
    12-1-4 菜单命令的响应 336
    12-1-5 动态管理菜单项 337
    12-1-6 弹出式菜单 338
    12-1-7 访问系统菜单 339
    12-2 工具栏 341
    12-2-1 TToolBar组件与TToolButton组件 342
    12-2-2 按钮样式 343
    12-2-3 工具栏中的组件 344
    12-2-4 工具栏按钮的提示信息 345
    12-2-5 提示信息的定制 346
    12-2-6 提示信息窗口类 348
    12-3 控件栏 349
    12-3-1 TCoolBar组件 349
    12-3-2 TControlBar组件 350
    12-3-3 TControlBar组件中的菜单 351
    12-4 活动抽象机制 352
    12-4-1 引入活动抽象的原因 352
    12-4-2 活动抽象的基本机制 352
    12-4-3 使用活动关联菜单和按钮 355
    12-4-4 活动的触发规则 357
    12-5 状态栏 361
    12-5-1 简单状态栏的使用方法 362
    12-5-2 复杂状态栏的使用方法 362
    12-5-3 跟踪键盘状态 363
    12-6 本章小结 364
    第13章 程序工作区 365
    13-1 SDI、MDI与MPI 366
    13-1-1 SDI 366
    13-1-2 MDI 366
    13-1-3 MPI 367
    13-1-4 设计程序工作区的五项基本原则 367
    13-2 TTabControl组件与TPageControl组件 368
    13-2-1 TTabControl组件 368
    13-2-2 TPageControl组件 370
    13-2-3 动态MPI的管理 372
    13-2-4 获取活动TJuMemo对象 374
    13-2-5 页面切换 376
    13-3 MPI编辑器 377
    13-3-1 文件的保存 378
    13-3-2 文件的关闭 379
    13-3-3 窗体的关闭 380
    13-3-4 文件的打印 381
    13-4 框架组件 382
    13-4-1 使用框架 382
    13-4-2 框架的基本意义 383
    13-4-3 窗体中的框架 384
    13-5 本章小结 386
    第14章 常用组件的**用法 387
    14-1 列表框组件 388
    14-1-1 TListBox组件 388
    14-1-2 TCheckListBox组件 389
    14-1-3 TComboBox组件与TColorBox组件 391
    14-2 视图组件 391
    14-2-1 TListView组件 391
    14-2-2 TTreeView组件 394
    14-3 组件的自绘 395
    14-3-1 TComboBox组件的自绘 396
    14-3-2 TMenuItem组件的自绘 397
    14-3-3 TListView组件的自绘 398
    14-3-4 TTreeView组件的自绘 401
    14-4 向导 402
    14-5 本章小结 405
    第15章 拖放与停靠 407
    15-1 组件间的拖放 408
    15-2 组件内的拖放 409
    15-3 控件栏与控件的停靠 411
    15-4 页面控件的停靠特性 412
    15-5 本章小结 413
    第三部分 组件开发与IDE扩展
    第16章 类引用 417
    16-1 类引用类型的概念 418
    16-1-1 类引用类型的语法 418
    16-1-2 类引用类型与类方法 419
    16-2 类引用类型与类构造 420
    16-2-1 类引用类型与类定义 420
    16-2-2 Application对象与窗体创建 421
    16-3 类引用类型与动态创建组件 423
    16-3-1 控件的动态创建 424
    16-3-2 类引用作为方法的参数 426
    16-3-3 控件的动态复制 427
    16-4 本章小结 428
    第17章 属性与事件 429
    17-1 属性 430
    17-1-1 引入属性的意义 430
    17-1-2 属性的访问说明 431
    17-1-3 属性的存储说明 434
    17-2 属性的类型 435
    17-2-1 简单类型的属性 435
    17-2-2 布尔类型与枚举类型的属性 436
    17-2-3 集合类型的属性 437
    17-2-4 对象类型的属性 437
    17-2-5 数组类型的属性 438
    17-3 **属性特性 441
    17-3-1 属性的索引说明 441
    17-3-2 属性的覆盖与重定义 442
    17-3-3 窗体类的属性声明 444
    17-4 方法指针与事件 445
    17-4-1 方法指针类型 445
    17-4-2 事件 447
    17-4-3 事件的基本用法 448
    17-5 本章小结 451
    第18章 运行时类型信息 453
    18-1 RTTI的理论基础 454
    18-1-1 RTTI的定义 454
    18-1-2 RTTI的意义 454
    18-2 获取持久类RTTI 456
    18-2-1 基本RTTI数据结构 456
    18-2-2 程序基本逻辑 459
    18-2-3 动态创建持久类对象实例 460
    18-2-4 获取类类型RTTI 460
    18-2-5 获取类继承层次RTTI 462
    18-2-6 类注册 463
    18-3 RTTI检索 463
    18-3-1 获取指向RTTI的指针 464
    18-3-2 使用TTreeView组件 464
    18-3-3 RTTI字符串的层次结构 466
    18-3-4 获取RTTI字符串 468
    18-4 类类型RTTI检索 471
    18-4-1 获取类RTTI 471
    18-4-2 属性信息数据结构 472
    18-4-3 获取类详细信息 473
    18-4-4 获取属性信息 474
    18-5 方法类型RTTI检索 476
    18-5-1 获取方法RTTI 476
    18-5-2 获取方法定义 476
    18-6 其他类型RTTI检索 478
    18-6-1 序数RTTI检索 479
    18-6-2 动态数组RTTI检索 480
    18-6-3 接口RTTI检索 481
    18-6-4 属性与事件的继承层次 481
    18-6-5 关于ClassWalker的余话 483
    18-7 本章小结 483
    第19章 基本组件开发技术 485
    19-1 组件开发的基本方法 486
    19-1-1 理解组件的三个视角 486
    19-1-2 需要进行组件开发的场合 486
    19-1-3 组件开发的基本途径 486
    19-1-4 组件开发的基本流程 488
    19-2 由现有组件派生新组件 489
    19-2-1 创建简单组件 489
    19-2-2 修改组件类 490
    19-2-3 测试新组件 494
    19-2-4 注册新组件 499
    19-2-5 组件图标 499
    19-3 组件包 500
    19-3-1 包的基本概念与类型 500
    19-3-2 包文件 501
    19-3-3 创建包 502
    19-3-4 包的组织与管理 503
    19-4 由TCustomControl类派生新组件 506
    19-4-1 使用组件专家创建新组件 507
    19-4-2 添加属性声明 507
    19-4-3 组件的构造方法与析构方法 508
    19-4-4 字体调整 510
    19-5 由TComponent类派生设计时不可见组件 510
    19-5-1 创建TJuDate组件 511
    19-5-2 添加OnDateChange事件 514
    19-5-3 实现TJuDate组件的构造方法 514
    19-5-4 指定组件的输入目录 515
    19-5-5 使用TJuDate组件 515
    19-6 本章小结 517
    第20章 **组件开发技术 519
    20-1 属性类别 520
    20-1-1 创建属性类别的基本方法 520
    20-1-2 创建属性类别的OpenToolsAPI 522
    20-1-3 属性类别的实现技术 524
    20-2 属性编辑器 525
    20-2-1 属性编辑器类 526
    20-2-2 属性值的编辑 529
    20-2-3 属性编辑器的特征 533
    20-2-4 属性编辑器的注册 534
    20-2-5 使用对话框编辑属性 535
    20-3 组件编辑器 539
    20-3-1 组件编辑器类 539
    20-3-2 缺省组件编辑器类 540
    20-3-3 简单的组件编辑器 541
    20-3-4 组件编辑器的注册 543
    20-4 本章小结 544
    第21章 组件持久性 545
    21-1 实现组件流的辅助类 546
    21-1-1 TFiler类 546
    21-1-2 TReader类 548
    21-1-3 TWriter类 551
    21-2 未发布普通属性的流操作 552
    21-2-1 创建TJuDefPropComp组件 553
    21-2-2 属性的读过程与写过程 554
    21-2-3 使用TJuDefPropComp组件 555
    21-3 未发布二进制属性的流操作 556
    21-3-1 创建TJuWavePlayer组件 556
    21-3-2 创建TJuWavePlayer组件的属性编辑器 561
    21-3-3 使用TJuWavePlayer组件 563
    21-4 本章小结 564
    第22章 接口与COM 565
    22-1 接口的一般概念 566
    22-1-1 接口与类 566
    22-1-2 接口的声明 566
    22-1-3 接口的使用方法 568
    22-1-4 接口的属性 570
    22-2 接口的实现 571
    22-2-1 接口的继承实现 571
    22-2-2 接口的类类型属性委托实现 572
    22-2-3 接口的接口类型属性委托实现 575
    22-2-4 接口的引用 576
    22-2-5 接口的赋值与类型适应 577
    22-3 接口的多态性 577
    22-3-1 接口的继承层次 577
    22-3-2 类的继承层次 578
    22-3-3 接口的多态 580
    22-3-4 接口方法的重命名 582
    22-4 基础COM编程 583
    22-4-1 COM简史 583
    22-4-2 COM基本概念 583
    22-4-3 COM对象 584
    22-4-4 COM类厂 586
    22-4-5 COM服务器 586
    22-4-6 注册COM服务器 589
    22-4-7 测试COM服务器 590
    22-5 本章小结 591
    第23章 扩展Delphi/Kylix IDE 593
    23-1 Open Tools API 594
    23-1-1 Open Tools API简史 594
    23-1-2 Open Tools API的体系结构 595
    23-1-3 OTA主要接口概述 596
    23-2 IDE向导 598
    23-2-1 文本查找 598
    23-2-2 IOTAWizard接口 600
    23-2-3 IDE向导 601
    23-2-4 IDE向导DLL 604
    23-3 消息通知器 604
    23-3-1 实现IOTAIDENotifier接口 604
    23-3-2 注册消息通知器 606
    23-4 本章小结 607
    第四部分 操作系统核心编程
    第24章 消息与消息处理 611
    24-1 Windows消息机制 612
    24-1-1 消息的基本概念 612
    24-1-2 消息处理 613
    24-2 Delphi消息处理机制 614
    24-2-1 Delphi消息记录 614
    24-2-2 VCL消息处理过程 615
    24-2-3 消息的返回值 615
    24-3 消息的分类 616
    24-3-1 Windows标准消息 616
    24-3-2 控件通知消息 617
    24-3-3 自定义消息 617
    24-4 消息与事件 618
    24-4-1 消息的发送 618
    24-4-2 VCL消息处理流程 619
    24-4-3 消息与事件的关系 623
    24-5 消息的拦截 624
    24-5-1 子类化窗口过程 624
    24-5-2 窗口方法映射 626
    24-5-3 窗口钩 628
    24-6 本章小结 630
    第25章 操作系统信息检索 631
    25-1 操作系统版本信息 632
    25-1-1 GetVersionEx函数与TOSVersionInfo记录 632
    25-1-2 TOSVersionInfoEx记录 633
    25-1-3 实现ShowSystemVersion方法 635
    25-1-4 访问注册表 637
    25-1-5 结果输出 638
    25-2 计算机名称信息 639
    25-2-1 GetComputerNameEx函数 639
    25-2-2 ShowComputerNames方法 640
    25-3 硬件信息 640
    25-3-1 GetSystemInfo函数与TSystemInfo记录 641
    25-3-2 ShowHardware方法 641
    25-4 系统配置信息 642
    25-4-1 一般信息检索 643
    25-4-2 环境变量串检索 644
    25-5 内存状态信息 645
    25-5-1 TMemoryStatus记录 646
    25-5-2 实现ShowMemoryStatus方法 646
    25-6 系统度量制信息 647
    25-7 本章小结 648
    第26章 动态链接库 649
    26-1 DLL基础 650
    26-1-1 DLL与动态链接 650
    26-1-2 DLL与EXE 651
    26-1-3 DLL的基本意义 651
    26-2 使用DLL 652
    26-2-1 隐式调用 652
    26-2-2 显式调用 653
    26-3 创建DLL 654
    26-3-1 DLL中的窗体 654
    26-3-2 DLL中的无模式窗体 656
    26-3-3 编写DLL的基本原则 657
    26-4 钩与DLL 659
    26-4-1 Windows钩 659
    26-4-2 定义钩数据结构 661
    26-4-3 WH_MOUSE钩 662
    26-4-4 钩的安装与脱离 664
    26-4-5 DLL入口点 665
    26-4-6 使用HookDll 665
    26-5 本章小结 667
    第27章 进程与内核对象 669
    27-1 进程的基础知识 670
    27-1-1 进程的基本概念 670
    27-1-2 进程的实例句柄 670
    27-1-3 进程的命令行 671
    27-1-4 进程的环境变量 671
    27-1-5 进程的目录 672
    27-1-6 CreateProcess函数 672
    27-1-7 ExitProcess函数与TerminateProcess函数 673
    27-1-8 子进程的创建与消亡 673
    27-2 Windows内核对象 675
    27-2-1 内核对象的典型特征 675
    27-2-2 内核对象类型与内核句柄表 677
    27-2-3 内核对象的创建与关闭 677
    27-2-4 进程间的内核对象共享 679
    27-3 进程枚举 683
    27-4 进程间通信 686
    27-4-1 进程间通信问题及其基本实现策略 686
    27-4-2 WM_COPYDATA消息 686
    27-4-3 进程间的数据传输 687
    27-5 本章小结 690
    第28章 线 程 691
    28-1 线程的基础知识 692
    28-1-1 进程与线程 692
    28-1-2 宜使用多线程的场合 692
    28-1-3 不宜使用多线程的场合 693
    28-1-4 线程的调度与优先级 693
    28-2 VCL线程对象 694
    28-2-1 TThread类 694
    28-2-2 使用TThread类 695
    28-2-3 线程对象的构造与释放 696
    28-2-4 线程函数 696
    28-2-5 线程的终止与异常 697
    28-3 VCL线程同步机制 698
    28-3-1 Synchronize方法 698
    28-3-2 Lock方法与Unlock方法 700
    28-3-3 TCriticalSection类 701
    28-3-4 TMultiReadExclusiveWriteSynchronizer类 703
    28-3-5 TEvent类与TSimpleEvent类 703
    28-3-6 WaitFor方法 705
    28-4 Windows线程内核对象 709
    28-4-1 TThread类的构造与CreateThread函数 710
    28-4-2 线程的终止 712
    28-4-3 线程与进程的标识 713
    28-4-4 线程的调度与优先级 716
    28-4-5 线程消息队列 718
    28-5 Windows线程同步机制 719
    28-5-1 TEvent类与事件内核对象 720
    28-5-2 互斥内核对象 720
    28-5-3 信号量内核对象 722
    28-5-4 互锁函数族 724
    28-6 线程局部存储 724
    28-7 本章小结 724
    第29章 文件与文件系统 725
    29-1 文件系统信息检索 726
    29-1-1 逻辑驱动器 726
    29-1-2 卷 727
    29-2 文件与目录基本操作 729
    29-2-1 外壳组件 729
    29-2-2 SHFileOperation函数 730
    29-3 文件与目录**操作 733
    29-3-1 文件属性 733
    29-3-2 文件查找 733
    29-3-3 文件变化通知 735
    29-4 本章小结 736
    第30章 虚拟内存 737
    30-1 Windows NT/2000/XP的虚拟地址空间布局 738
    30-2 虚拟内存管理 745
    30-2-1 保留与提交 745
    30-2-2 共享内存与文件映射对象 745
    30-2-3 保护属性 746
    30-2-4 写时复制 746
    30-3 MemTouch程序 747
    30-3-1 VirtualQuery函数与VirtualQueryEx函数 747
    30-3-2 VirtualMemoryQuery函数与VirtualMemoryWalk函数 748
    30-3-3 GetTokens过程 750
    30-4 VMQuery动态链接库 751
    30-4-1 TVirtualMemoryInformation记录 751
    30-4-2 实现VirtualMemoryWalk函数 752
    30-4-3 实现VirtualMemoryQuery函数 753
    30-4-4 实现GetMemoryInformation过程 757
    30-4-5 DLL的映像基地址 760
    30-5 堆栈与虚拟内存分配 761
    30-5-1 栈 761
    30-5-2 堆 762
    30-5-3 虚拟内存分配 762
    30-6 本章小结 764
    第31章 区域对象与进程间通信 765
    31-1 区域对象 766
    31-1-1 区域对象的基本概念 766
    31-1-2 创建区域对象 767
    31-1-3 映射视图 768
    31-1-4 解除视图映射与关闭区域对象 769
    31-2 DLL与数据共享 769
    31-2-1 实现Mapping动态链接库 769
    31-2-2 实现读进程与写进程 772
    31-3 TJuSectionObject类族 773
    31-3-1 实现TJuSectionObject类 773
    31-3-2 实现TJuMemMapping类 779
    31-3-3 实现TJuFileMapping类 782
    31-4 远程注入DLL与进程间通信 787
    31-4-1 进程间通信:子类化 787
    31-4-2 进程间通信:钩 787
    31-4-3 创建远程线程 788
    31-4-4 远程进程虚拟内存信息检索 794
    31-5 本章小结 798
    第五部分 附 录
    附录A 常用Delphi/Kylix常量、变量、函数与过程 803
    A-1 应用程序级信息 804
    A-2 数学运算 804
    A-3 组件注册与Open Tools API 805
    A-4 日期与时间 805
    A-5 文件与文件管理 807
    A-6 流操作 807
    A-7 字符与字符串操作 808
    A-8 类型转换 809
    附录B Delphi/Kylix编译指示与工程选项 811
    附录C 跨平台开发 815
    C-1 从Windows到Linux的标准移植步骤 816
    C-2 CLX与VCL的差异 820
    C-3 Windows与Linux的差异 821
    C-3-1 环境差异 822
    C-3-2 目录差异 823
    C-4 编写可移植代码的一般原则 824
    C-4-1 一般原则 824
    C-4-2 使用条件编译指令 824
    C-4-3 位置无关代码与位置相关代码 826
    C-4-4 消息与系统事件 826
    附录D 程序调试 829
    D-1 程序错误的种类 830
    D-2 基本程序调试手段 830
    D-2-1 设置调试工具选项 830
    D-2-2 控制程序执行 832
    D-2-3 使用断点 833
    D-2-4 检查变量和表达式的值 835
    D-2-5 检查函数和过程调用 837
    D-2-6 检查局部变量 838
    D-3 **程序调试手段 838
    D-3-1 检查线程状态 838
    D-3-2 检查CPU状态 839
    D-3-3 检查FPU状态 840
    D-3-4 检查模块的装入与卸载 841
    D-3-5 检查事件日志 842
    附录E Delphi/Kylix IDE错误一览表 845
    E-1 编译错误信息 846
    E-2 运行时错误信息 852
    E-2-1 I/O错误:错误编号为100~149 852
    E-2-2 致命错误:错误编号为200~255 852
    E-2-3 操作系统错误 853 附录F 名词与术语索引 869
    附录G 参考文献与深入读物 883
    编辑推荐语
    ◆清华大学教师力作,包含作者多年编译器研究与程序设计教学经验
    ◆深入Object Pascal语言核心,澄清许多容易让人迷惑的概念
    ◆披露Delphi/Kylix实现的技术内幕,详细阐释深入编程的思考方法与实现策略
    ◆全书131个实例,近70,000行源代码,读者可直接使用的类与子程序近百个
    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外