| 作 者: | 隆甘 |
| 出版社: | 机械工业出版社 |
| 丛编项: | C++设计新思维 |
| 版权说明: | 本书为出版图书,暂不支持在线阅读,请支持正版图书 |
| 标 签: | VC++ |
| ISBN | 出版时间 | 包装 | 开本 | 页数 | 字数 |
|---|---|---|---|---|---|
| 未知 | 暂无 | 暂无 | 未知 | 0 | 暂无 |
“C++设计新思维”丛书前言
译者序
序
前言
引言
第1章 策略与管理
条款1:把所有的平台都放在同样重要的位置
条款2:使用公共的代码
工厂模式在不同平台上的实现
类的实现
平台相关的ProcessesImpl类
创建实例层次
用CVS或SVN组织项目
编译代码和Makefile
条款3:要求开发人员用不同的编译器编译代码
条款4:要求开发人员在不同的平台上编译代码
条款5:测试所有的平台
条款6:关注编译警告
GNU 标志
微软Visual C++
第2章 Build系统和Toolchain
条款7:使用最适合平台的编译器
条款8:尽量使用本地IDE
条款9:在Windows上安装和使用Cygwin
条款10:使用跨平台的Make系统Make
在Windows上编译Makefile和源码
Autoconf/Automake
Imake
在Mac OS X上安装Imake
在Windows上安装Imake
一个例子:使用Imake
Imakefile文件
完整编译的一个多文件程序
在sitedef里重写默认值
去除代码里的#ifdefs
Imake中用到的文件
编译含有子目录的项目
Debug的编译
第3章 软件配置管理
条款11:使用跨平台的bug报告和
跟踪系统
可访问性
跟踪平台相关bug的能力
Bugzilla75
条款12:设置Tinderbox
条款13:用CVS或Subversion来管理
源代码
设置和使用CVS
条款14:使用patch
一个例子
patch选项
应对reject
patch和跨平台开发
第4章 安装与部署94条款15:为本地安装程序提供支持
XPInstall
平台安装
第5章 操作系统接口和库
条款16:使用标准API(如POSIX)
POSIX
支持POSIX、SVID、XPG和BSD
在GCC里使用标准支持
微软Runtime Library对POSIX的支持
在Windows上使用GCC
决定支持哪个标准
条款17:考虑使用NSPR这样的平台
抽象库
为什么要开发NSPR
NSPR基础
线程
NSPR的其他功能
第6章 其他可移植性主题
条款18: 慎用浮点数
不要把浮点值序列化为二进制
判断相等
条款19:显式地注明char类型的符号
条款20:避免序列化二进制数据
条款21: 避免类型长度和组织带来的
问题
整型的长度
NSPR里的类型
长度和效率
整型转换
struct的对齐和顺序
第7章 用户界面
条款22:从Model里把用户界面分离出来
用Model/View把用户界面和程序逻辑
分开
用Publish/Subscribe在View和Model之间通讯
小结
条款23:开发一个跨平台用户界面的
策略
影响跨平台GUI开发移植性的问题
选择GUI的策略
第8章 wxWidgets196wxWidgets概述
许可协议
安装wxWidgets
一个简单的例子:Hello wxWidgets199创建应用程序的用户界面
编译wxWidgets应用程序
控件与事件
容器widget
对话框
复合式widget
国际化和本地化
第9章 用C++开发跨平台GUI工具包
什么是XUL
DHTML
HTML
脚本语言
文档对象模型
样式系统
XUL
窗口和对话框
box元素
工具条
菜单
控件
其他widget
用XUL编程
用JavaScript为UI添加逻辑
用XPCOM和XPConnect接口化JavaScript和C/C++
Trixul
Trixul支持的widget
Trixul的基本操作
widget
类的实现
创建widget实现的对象
widget工厂
应用程序主循环
Trixul创建用户界面的步骤
文档、元素和DOM288
创建widget
布局
滚动窗口和布局
和JavaScript集成
和C++组件集成