作者:明日科技
出版社:清华大学出版社
格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT
C++从入门到精通(第2版)试读:
内容简介
《C++从入门到精通(第2版)》从初学者角度出发,以通俗易懂的语言,丰富多彩的实例,详细讲解了C++语言的基础知识。全书共分18章,包括绪论,数据类型,表达式与语句,条件判断语句,循环语句,函数,数组、指针和引用,构造数据类型,面向对象编程,类和对象,继承与派生,模板,STL标准模板库,RTTI与异常处理,程序调试,文件操作,网络通信,图书管理系统。书中所有知识都结合具体实例进行介绍,涉及的程序代码给出了详细的注释,可以使读者轻松领会C++语言的强大,快速提高开发技能。另外,本书除了纸质内容之外,配书光盘中还给出了海量开发资源库,主要内容如下:☑ 语音视频讲解:总时长14小时,共94段
☑ 实例资源库:881个实例及源码详细分析
☑ 模块资源库:15个经典模块开发过程完整展现
☑ 项目案例资源库:15个企业项目开发过程完整展现
☑ 测试题库系统:616道能力测试题目
☑ 面试资源库:371个企业面试真题
☑ PPT电子教案
本书适合作为软件开发入门者的自学用书,也适合作为高等院校相关专业的教学参考书,也可供开发人员查阅、参考。
如何使用本书开发资源库
在学习《C++从入门到精通(第2版)》一书时,配合随书光盘提供了“Visual C++开发资源库”系统,可以帮助读者快速提升编程水平和解决实际问题的能力。《C++从入门到精通(第2版)》和Visual C++开发资源库配合学习流程如图1所示。图1 从入门到精通与开发资源库配合学习流程图
打开光盘的“Visual C++开发资源库”文件夹,运行Visual C++开发资源库.exe程序,即可进入“Visual C++开发资源库”系统,界面如图2所示。图2 Visual C++开发资源库主界面
在学习《C++从入门到精通(第2版)》某一章节时,可以配合实例资源库的相应章节,利用实例资源库提供的大量热点实例和关键实例巩固所学编程技能,提高编程兴趣和自信心。也可以配合能力测试题库的对应章节进行测试,检验学习成果,具体流程如图3所示。图3 使用实例资源库和能力测试题库
对于数学逻辑能力和英语基础较为薄弱的读者,或者想了解个人数学逻辑思维能力和编程英语基础的用户,本书提供了数学及逻辑思维能力测试和编程英语能力测试供练习和测试,如图4所示。图4 数学及逻辑思维能力测试和编程英语能力测试目录
当《C++从入门到精通(第2版)》学习完成时,可以配合模块资源库和项目资源库的30个模块和项目,全面提升个人综合编程技能和解决实际开发问题的能力,为成为C++软件开发工程师打下坚实基础。具体模块和项目目录如图5所示。图5 模块资源库和项目资源库目录
万事俱备,该到软件开发的主战场上接受洗礼了。面试资源库提供了大量国内外软件企业的常见面试真题,同时还提供了程序员职业规划、程序员面试技巧、企业面试真题汇编和虚拟面试系统等精彩内容,是程序员求职面试的绝佳指南。面试资源库具体内容如图6所示。图6 面试资源库具体内容
如果您在使用本书开发资源库时遇到问题,读者朋友可加我们的QQ:4006751066(可容纳10万人),我们将竭诚为您服务。前 言Preface
丛书说明:“软件开发视频大讲堂”(第1版)2008年出版以来,因为首次全程配备视频,编写细腻,易学实用,在计算机图书市场上产生了强烈反响,多个品种被评为“全国优秀畅销书”,
2010年7月改版以后,直至现在,在全国计算机零售图书排行榜的软件开发类排行中,持续名列前茅。丛书累计销售近40万册,被百余所高校计算机相关专业、软件学院选为教材,在众多的软件开发类零售图书中成为一支最耀眼的品牌。
第3版着重在前两版的基础上,修改原有的疏漏,大部分重新录制了视频,提供了从入门学习,到实例应用,到模块开发,到项目开发,到能力测试,直到面试等各个阶段的海量资源库。为了方便教学,还提供了教学课件PPT,读者可登录清华大学出版社网站直接下载。
C++语言是在C语言基础上发展起来的,它在C语言基础上融入了许多新的编程理念,这些理念有利于程序的开发。从语言角度来说,C++语言是个规范,它规范程序员如何进行面向对象程序开发。C++具有C语言操作底层的能力,同时还具有提高代码复用率的面向对象编程技术,是一种语句更加灵活、使用更加简捷、技术更加全面的编程利器。本书内容
本书提供了从入门到编程高手所必备的各类知识,共分4篇,大体结构如下图所示。
第1篇:基础知识。本篇讲解C++语言基础部分,只有具备了牢固的基础知识才能更快地掌握更高级的技术内容。通过对C++语言的历史和特性、选择C++语言的开发环境、算法、C++语言的数据类型、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计和循环控制这些内容的介绍,结合流程图和实例,并通过视频的指导讲解,为以后编程奠定坚实的基础。
第2篇:核心技术。本篇介绍了C++语言的关于面向对象方面的内容,理解面向对象这个概念,应用类类型创建对象,掌握什么是继承和派生,利用多态进行面向对象开发。
第3篇:高级应用。模板是STL的基础,通过对模板的介绍,使读者能够理解STL的构造。文件操作也是程序开发过程中必不可少的技术,掌握文件操作是奠定开发大项目的基础,通过对RTTI的介绍使读者对面向对象开发有更深的理解。网络通信是仅次于文件技术的另一个关键技术,通过实例,读者可以掌握基本的网络通信。
第4篇:项目实战。本篇通过一个图书管理系统,运用软件工程的设计思想,讲解如何进行软件项目的开发。书中按照编写需求分析→系统设计→功能设计→创建项目→实现项目模块功能→运行项目的流程进行介绍,带领读者一步步亲身体验开发项目的全过程。本书特点
□ 由浅入深,循序渐进。本书以初、中级程序员为对象,先从C++语言基础学起,再到C++语言的程序结构,然后学习C++语言的高级应用,最后学习开发一个完整的项目。讲解过程中步骤详尽、版式新颖,并且在程序中会有相应的实例帮助读者更好地理解所讲解的知识,在实例讲解时分步分析,可使读者在阅读时一目了然,从而快速把握书中内容。
□ 语音视频,讲解详尽。书中每一章均提供声图并茂的视频教学录像,读者可以根据书中提供的视频位置在光盘中找到相应文件。这些视频能够引导初学者快速入门,感受编程的快乐和成就感,增强进一步学习的信心,从而快速成为编程高手。
□ 实例典型,轻松易学。通过例子学习是最好的学习方式,本书通过一个知识点、一个例子、一个结果、一段评析、一个综合应用的模式,透彻详尽地讲述了实际开发中所需的各类知识。另外,为了便于读者阅读程序代码,快速学习编程技能,书中几乎每行代码都给出了注释。
□ 精彩栏目,贴心提醒。本书根据需要在各章使用了很多“注意”、“说明”、“技巧”等小栏目,让读者可以在学习过程中更轻松地理解相关知识点及概念,更快地掌握个别技术的应用技巧。
□ 应用实践,随时练习。书中几乎每章都提供了“实践与练习”,读者能够通过对问题的解答重新回顾、熟悉所学的知识,举一反三,为进一步学习做好充分的准备。读者对象
☑ 初学编程的自学者
☑ 编程爱好者
☑ 大、中专院校的老师和学生
☑ 相关培训机构的老师和学员
☑ 毕业设计的学生
☑ 初、中级程序开发人员
☑ 程序测试及维护人员
☑ 参加实习的“菜鸟”程序员读者服务
为了方便解决本书疑难问题,读者朋友可加我们的QQ:4006751066(可容纳10万人),也可以登录www.mingribook.com留言,我们将竭诚为您服务。致读者
本书由C++程序开发团队组织编写,主要编写人员有赵永发、高文财、王小科、寇长梅、赵会东、王国辉、陈丹丹、李伟、刘欣、李慧、潘凯华、李继业、刘淇、王双、赵旭阳、陈媛、顾彦玲、陈英、刘莉莉、曹飞飞、朱晓、高春艳、房大伟、刘云峰、吕双、顾丽丽、孟范胜、董大永、李继业、尹强、张磊、王军、刘彬彬、卢瀚、安剑、巩建华、刘锐宁、李伟明、梁水、李鑫、孙秀梅、李钟尉等。在编写本书的过程中,我们始终本着科学、严谨的态度,力求精益求精,但错误、疏漏之处在所难免,敬请广大读者批评指正。
感谢您购买本书,希望本书能成为您编程路上的领航者。“零门槛”编程,一切皆有可能。
祝读书快乐!编 者光盘“开发资源库”目录第1大部分 实例资源库(881个完整实例分析,光盘路径:开发资源库/实例资源库)
……
语言基础
输出问候语
输出带边框的问候语
不同类型数据的输出
输出字符表情
获取用户输入的用户名
简单的字符加密
实现两个变量的互换
判断性别
用宏定义实现值互换
简单的位运算
整数加减法练习
李白喝酒问题
桃园三结义
何年是闰年
小球称重
购物街中的商品价格竞猜
促销商品的折扣计算
利用switch语句输出倒三角形
PK少年高斯
灯塔数量
上帝创世的秘密
小球下落
再现乘法口诀表
判断名次
序列求和
简单的级数运算
求一个正整数的所有因子
一元钱兑换方案
加油站加油
买苹果问题
猴子吃桃
老师分糖果
新同学的年龄
百钱百鸡问题
彩球问题
集邮册中的邮票数量
用#打印三角形
用*打印图形
绘制余弦曲线
打印杨辉三角
计算某日是该年第几天
斐波那契数列
角谷猜想
哥德巴赫猜想
四方定理
尼科彻斯定理
魔术师的秘密
……
控件应用
文本背景的透明处理
具有分隔条的静态文本控件
设计群组控件
电子时钟
模拟超链接效果
使用静态文本控件数组设计简易拼图
多行文本编辑的编辑框
输入时显示选择列表
七彩编辑框效果
如同话中题字
金额编辑框
密码安全编辑框
个性字体展示
在编辑框中插入图片数据
RTF文件读取器
在编辑框中显示表情动画
位图和图标按钮
问卷调查的程序实现
热点效果的图像切换
实现图文并茂效果
按钮七巧板
动画按钮
向组合框中插入数据
输入数据时的辅助提示
列表宽度的自动调节
颜色组合框
枚举系统盘符
QQ登录式的用户选择列表
禁止列表框信息重复
在两个列表框间实现数据交换
上下移动列表项位置
实现标签式选择
要提示才能看得见
水平方向的延伸
为列表框换装
使用滚动条显示大幅位图
滚动条的新装
颜色变了
进度的百分比显示
程序中的调色板
人靠衣装
头像选择形式的登录窗体
以报表显示图书信息
实现报表数据的排序
在列表中编辑文本
QQ抽屉界面
以树状结构显示城市信息
节点可编辑
节点可拖动
选择你喜欢的省、市
树控件的服装设计
目录树
界面的分页显示
标签中的图标设置
迷你星座查询器
设置系统时间
时间和月历的同步
实现纪念日提醒
对数字进行微调
为程序添加热键
获得本机的IP地址
AVI动画按钮
GIF动画按钮
图文按钮
不规则按钮
为编辑框设置新的系统菜单
为编辑框控件添加列表选择框
多彩边框的编辑框
改变编辑框文本颜色
不同文本颜色的编辑框
位图背景编辑框
电子计时器
使用静态文本控件设计群组框
制作超链接控件
利用列表框控件实现标签式数据选择
具有水平滚动条的列表框控件
列表项的提示条
位图背景列表框控件
将数据表中的字段添加到组合框控件
带查询功能的组合框控件
自动调整组合框的宽度
多列显示的组合框
带图标的组合框
显示系统盘符组合框
Windows资源管理器
利用列表视图控件浏览数据
利用列表视图控件制作导航界面
在列表视图中拖动视图项
具有排序功能的列表视图控件
具有文本录入功能的列表视图控件
使用列表视图设计登录界面
多级数据库树状结构数据显示
带复选功能的树状结构
三态效果树控件
修改树控件节点连线颜色
位图背景树控件
显示磁盘目录
树型提示框
利用RichEdit显示Word文档
利用RichEdit控件实现文字定位与标识
利用RichEdit控件显示图文数据
在RichEdit中显示不同字体和颜色的文本
在RichEdit中显示GIF动画
自定义滚动条控件
渐变颜色的进度条
应用工具提示控件
使用滑块控件设置颜色值
绘制滑块控件
应用标签控件
自定义标签控件
向窗体中动态添加控件
公交线路模拟
设计字体按钮控件
设计XP风格按钮
类似瑞星的目录显示控件
绘制分割条
显示GIF的ATL控件
类似Windows资源管理器的列表视图控件
漂亮的热点按钮
QQ抽屉效果的列表视图控件
设计类似QQ的编辑框安全控件
设计电子表格形式的计时器
文字显示的进度条控件
将XML文件树结构信息添加到树控件中
读取RTF文件到编辑框中
个性编辑框
设计颜色选择框控件
设计图片预览对话框
菜单
根据表中数据动态生成菜单
创建级联菜单
带历史信息的菜单
绘制渐变效果的菜单
带图标的程序菜单
根据INI文件创建菜单
根据XML文件创建菜单
为菜单添加核对标记
为菜单添加快捷键
设置菜单是否可用
将菜单项的字体设置为粗体
多国语言菜单
可以下拉的菜单
左侧引航条菜单
右对齐菜单
鼠标右键弹出菜单
浮动的菜单
更新系统菜单
任务栏托盘弹出菜单
单文档右键菜单
工具栏下拉菜单
编辑框右键菜单
列表控件右键菜单
工具栏右键菜单
在系统菜单中添加菜单项
个性化的弹出菜单
工具栏和状态栏
带图标的工具栏
带背景的工具栏
定制浮动工具栏
创建对话框工具栏
根据菜单创建工具栏
工具栏按钮的热点效果
定义XP风格的工具栏
根据表中数据动态生成工具栏
工具栏按钮单选效果
工具栏按钮多选效果
固定按钮工具栏
可调整按钮位置的工具栏
具有提示功能的工具栏
在工具栏中添加编辑框
带组合框的工具栏
工具栏左侧双线效果
多国语音工具栏
显示系统时间的状态栏
使状态栏随对话框的改变而改变
带进度条的状态栏
自绘对话框动画效果的状态栏
滚动字幕的状态栏
带下拉菜单的工具栏
动态设置是否显示工具栏按钮文本第2大部分 模块资源库(15个经典模块,光盘路径:开发资源库/模块资源库)
模块1 图像处理模块
图像处理模块概述
模块概述
功能结构
模块预览
关键技术
位图数据的存储形式
任意角度旋转图像
实现图像缩放
在Visual C++中使用GDI+进行图像处理
实现图像的水印效果
浏览PSD文件
利用滚动窗口浏览图片
使用子对话框实现图像的局部选择
图像旋转模块设计
图像平移模块设计
图像缩放模块设计
图像水印效果模块设计
位图转换为JPEG模块设计
PSD文件浏览模块设计
照片版式处理模块设计
模块2 办公助手模块
办公助手模块概述
模块概述
功能结构
模块预览
关键技术
如QQ般自动隐藏
按需要设计编辑框
设计计算器的圆角按钮
回行数据在INI文件中的读取与写入
根据数据库数据生成复选框
饼形图显示投票结果
主窗体设计
计算器设计
便利贴设计
加班模块设计
投票项目模块设计
模块3 桌面精灵模块
桌面精灵模块概述
模块概述
功能结构
模块预览
关键技术
阳历转换成阴历的算法
时钟的算法
实现鼠标穿透
窗体置顶及嵌入桌面
添加系统托盘
开机自动运行
自绘右键弹出菜单
带图标的按钮控件
主窗体设计
新建备忘录模块设计
新建纪念日模块设计
纪念日列表模块设计
窗口设置模块设计
提示窗口模块设计
模块4 企业通信模块
企业通信模块概述
模块概述
功能结构
模块预览
关键技术
设计支持QQ表情的ATL控件
向CRichEditCtrl控件中插入ATL控件
向CRichEditCtrl控件中插入ATL控件
使用XML文件实现组织结构的客户端显示
在树控件中利用节点数据标识节点的类型(部门信息、男职员、女职员)
定义数据报结构,实现文本、图像、文件数据的发送与显示
数据报粘报的简单处理
实现客户端掉线的自动登录
服务器主窗口设计
部门设置模块设计
帐户设置模块设计
客户端主窗口设计
登录模块设计
信息发送窗口模块设计
模块5 媒体播放器模块
媒体播放器模块概述
模块概述
模块预览
关键技术
如何使用Direct Show开发包
使用Direct Show开发程序的方法
使用Direct Show如何确定媒体文件播放完成
使用Direct Show进行音量和播放进度的控制
使用Direct Show实现字幕叠加
使用Direct Show实现亮度、饱和度和对比度调节
设计显示目录和文件的树视图控件
媒体播放器主窗口设计视频显示窗口设计
字幕叠加窗口设计
视频设置窗口设计
文件播放列表窗口设计
模块6 屏幕录像模块
屏幕录像模块概述
模块概述
功能结构
关键技术
屏幕抓图
抓图时抓取鼠标
将位图数据流写入AVI文件
将AVI文件转换成位图数据
获得AVI文件属性
根据运行状态显示托盘图标
获得磁盘的剩余空间
动态生成录像文件名
主窗体设计
录像截取模块设计
录像合成模块设计
模块7 计算机监控模块
计算机监控模块概述
开发背景
需求分析
模块预览
关键技术
获取屏幕设备上下文存储为位图数据流
将位图数据流压缩为JPEG数据流
将JPEG数据流分成多个数据报发送到服务器
将多个数据报组合为一个完整的JPEG数据流
根据JPEG数据流显示图像
双击实现窗口全屏显示
客户端主窗口设计
服务器端主窗口设计
远程控制窗口设计
模块8 考试管理模块
考试管理模块概述
关键技术
在主窗体显示之前显示登录窗口
随机抽题算法
编辑框控件设置背景图片
显示欢迎窗体
计时算法
保存答案算法
工具栏按钮提示功能实现
图标按钮的实现
数据库设计
数据库分析
设计表结构
学生前台考试模块
学生考试功能实现
学生查分功能实现
教师后台管理模块
后台管理主窗口
学生信息管理功能实现
试题管理功能实现
学生分数查询功能实现
模块9 SQL数据库提取器模块
SQL数据库提取器概述
模块概述
功能结构
关键技术
获得数据表、视图和存储过程
获得表结构
向WORD文档中插入表格
向WORD表格中插入图片
向EXCEL表格中插入图片
使用bcp实用工具导出数据
主窗体设计
附加数据库模块设计
备份数据库模块设计
数据导出模块设计
配置ODBC数据源模块设计
模块10 万能打印模块
万能打印模块概述
关键技术
滚动条设置
打印中的页码计算和分页预览功能算法
数据库查询功能
打印控制功能
如何解决屏幕和打印机分辨率不统一问题
打印新一页
主窗体设计
Access数据库选择窗体
SQL Server数据库选择窗体
数据库查询模块
打印设置模块
打印预览及打印模块
……第3大部分 项目资源库(15个企业开发项目,光盘路径:开发资源库/项目资源库)
项目1 商品库存管理系统
系统分析
使用UML用例图描述商品库存管理系统需求
系统流程
系统目标
系统总体设计
系统功能结构设计
编码设计
数据库设计
创建数据库
创建数据表
数据库逻辑结构设计
数据字典
使用Visual C++6.0与数据库连接
如何使用ADO
重新封装ADO
程序模型设计
从这里开始
类模型分析
CBaseComboBox类分析
主程序界面设计
主程序界面开发步骤
菜单资源设计
主要功能模块详细设计
商品信息管理
出库管理
调货管理
地域信息管理
库存盘点
经验漫谈
Windows消息概述
消息映射
消息的发送
运行时刻类型识别宏
MFC调试宏
程序调试与错误处理
零记录时的错误处理
在系统登录时出现的错误
对话框资源对照说明
项目2 社区视频监控系统
开发背景和系统分析
开发背景
需求分析
可行性分析
编写项目计划书
系统设计
系统目标
系统功能结构
系统预览
业务流程图
编码规则
数据库设计
公共模块设计
主窗体设计
用户登录模块设计
监控管理模块设计
无人广角自动监控模块设计
视频回放模块设计
开发技巧与难点分析
监控卡的选购及安装
监控卡选购分析
监控卡安装
视频采集卡常用函数
项目3 图像处理系统
总体设计
需求分析
可行性分析
项目规划
系统功能架构图
系统设计
设计目标
开发及运行环境
编码规则
技术准备
基本绘图操作
内存画布设计
自定义全局函数
自定义菜单
自定义工具栏
主要功能模块的设计
系统架构设计
公共模块设计
主窗体设计
显示位图模块设计
显示JPEG模块设计
显示GIF模块设计
位图转换为JPEG模块设计
位图旋转模块设计
线性变换模块设计
手写数字识别模块设计
疑难问题分析解决
读取位图数据
位图旋转时解决位图字节对齐
文件清单
项目4 物流管理系统
系统分析
概述
可行性分析
系统需求分析
总体设计
项目规划
系统功能结构图
系统设计
设计目标
数据库设计
系统运行环境
功能模块设计
构建应用程序框架
封装数据库
主窗口设计
基础信息基类
支持扫描仪辅助录入功能业务类
业务类
业务查询类
统计汇总类
审核类
派车单写IC卡模块
配送申请模块
三检管理模块
报关过程监控模块
数据备份模块
数据恢复模块
库内移动模块
公司设置模块
报关单管理模块
报关单审核模块
配送审核模块
派车回场确计模块
系统提示模块
查验管理模块
系统初始化模块
系统登录模块
通关管理模块
权限设置模块
商品入库排行分析模块
系统注册模块
在途反馈模块
疑难问题分析与解决
库内移动
根据分辨率画背景
程序调试
文件清单
项目5 局域网屏幕监控系统
系统分析
需求分析
可行性分析
总体设计
项目规划
系统功能架构图
系统设计
设计目标
开发及运行环境
技术准备
套接字函数
套接字的初始化
获取套接字数据接收的事件
封装数据报
将屏幕图像保存为位图数据流
读写INI文件
使用GDI+
主要功能模块的设计
客户端模块设计
服务器端模块设计
疑难问题分析解决
使用GDI+产生的内存泄露
释放无效指针产生地址访问错误
文件清单
项目6 客户管理系统
系统分析
概述
需求分析
可行性分析
总体设计
项目规划
系统功能架构图
系统设计
设计目标
开发及运行环境
数据库设计
技术准备
数据库的封装
封装ADO数据库的代码分析
主要功能模块设计
主窗体
客户信息
联系人信息
联系人信息查询
关于模块
增加操作员模块
客户反馈满意程度查询
客户反馈模块
客户呼叫中心模块
客户级别设置模块
客户满意程度设置模块
客户投诉模块
登录界面
密码修改模块
客户信息查询模块
区域信息模块
企业类型模块
企业性质模块
企业资信设置模块
客户投诉满意程度查询
业务往来模块
疑难问题分析与解决
使用CtabCtrl类实现分页的2种实现方法
ADO不同属性和方法的弊端及解决方法
程序调试
文件清单
项目7 企业短信群发管理系统
开发背景和系统分析
开发背景
需求分析
可行性分析
编写项目计划书
系统设计
系统目标
系统功能结构图
系统预览
业务流程图
数据库设计
公共类设计
自定义SetHBitmap方法
处理WM_MOUSEMOVE事件
主窗口设计
短信猫设置模块设计
电话簿管理模块设计
常用语管理模块设计
短信息发送模块设计
短信息接收模块设计
开发技巧与难点分析
显示“收到新信息”对话框
制作只允许输入数字的编辑框
短信猫应用
项目8 商品销售管理系统
系统分析
用UML顺序图描述销售业务处理流程
业务流程
系统的总体设计思想
系统设计
系统功能设计
数据库设计
主界面设计
主要功能模块详细设计
系统登录模块
基础信息查询基类
客户信息管理
销售管理
业务查询基类
权限设置
经验漫谈
大小写金额的转化函数MoneyToChineseCode
怎样取得汉字拼音简码
怎样在字符串前或后生成指定数量的字符
日期型(CTime)与字符串(CString)之间的转换
Document与View之间的相互作用
列表框控件(List Box)的使用方法
组合框控件(Combo Box)的使用方法
程序调试及错误处理
截获回车后的潜在问题
数据恢复时的错误
对话框资源对照说明
项目9 进销存管理系统
概述
系统需求分析
可行性分析
总体设计
项目规划
系统功能结构图
系统设计
设计目标
系统运行环境
数据库设计
功能模块设计
主窗口设计
系统登录管理
商品销售管理
商品入库管理
调货登记管理
权限设置管理
疑难问题分析与解决
使CListCtrl控件可编辑
显示自动提示窗口(CListCtrlPop)
处理局部白色背景
给编辑框加一个下划线
修改控件字体
程序调试
使用调试窗口
输出信息到“Output”窗口
处理内存泄漏问题
文件清单
项目10 企业电话语音录音管理系统
开发背景和需求分析
开发背景
需求分析
系统设计
系统目标
系统功能结构
系统预览
业务流程图
数据库设计
公共模块设计
主窗体设计
来电管理模块设计
电话录音管理模块设计
员工信息管理模块设计
产品信息管理模块设计
开发技巧与难点分析
为程序设置系统托盘
对话框的显示
语音卡函数介绍
……第4大部分 能力测试资源库(616道能力测试题目,光盘路径:开发资源库/能力测试)
第1部分 Visual C++编程基础能力测试
……
第2部分 数学及逻辑思维能力测试
基本测试
进阶测试
高级测试
第3部分 编程英语能力测试
英语基础能力测试
英语进阶能力测试第5大部分 面试系统资源库(371项面试真题,光盘路径:开发资源库/面试系统)
第1部分 C、C++程序员职业规划
你了解程序员吗
程序员自我定位
第2部分 C、C++程序员面试技巧
面试的三种方式
如何应对企业面试
英语面试
电话面试
智力测试
第3部分 C、C++常见面试题
C/C++语言基础面试真题
字符串与数组面试真题
函数面试真题
指针与引用面试真题
预处理和内存管理面试真题
位运算面试真题
面向对象面试真题
继承与多态面试真题
数据结构与常用算法面试真题
排序与常用算法面试真题
第4部分 C、C++企业面试真题汇编
企业面试真题汇编(一)
企业面试真题汇编(二)
企业面试真题汇编(三)
企业面试真题汇编(四)
第5部分 VC虚拟面试系统
……第1篇 基础知识 第1章 绪论 第2章 数据类型 第3章 表达式与语句 第4章 条件判断语句 第5章 循环语句 第6章 函数 第7章 数组、指针和引用 第8章 构造数据类型
本篇讲解C++语言基础部分,只有具备了牢固的基础知识才能更快地掌握更高级的技术内容。通过对C++语言的历史和特性、选择C++语言的开发环境、算法、C++语言的数据类型、运算符与表达式、常用的数据输入/输出函数、选择结构程序设计和循环控制这些内容的介绍,结合流程图和实例,并通过视频的指导讲解,为以后编程奠定坚实的基础。第1章 绪论(视频讲解:1小时18分钟)
C++是当今最为流行的编程语言之一,它是在C语言基础上发展起来的。随着面向对象编程思想的发展,C++也融入了新的编程理念,这些理念有利于程序的开发。C++从语言角度来讲也是个规范,随着规范的发布,许多C++编译器不断涌现,不同的C++编译器也带来了不同的语言特性,这给程序员带来了广阔的选择空间。
通过阅读本章,您可以: 了解C++的发展历程 了解为C++发展做出杰出贡献的人物 掌握主要的C++编译器及开发环境 掌握C++项目文件及编译工程1.1 C++历史背景视频讲解:光盘\TM\lx\1\C++历史背景.exe
学习一门语言,首先要对这门语言有一定的了解,要知道这门语言能做什么,要怎样才能学好。本节将对C++语言的历史背景进行简单的介绍,使读者对C++语言有一个简单而直接的印象。1.1.1 20世纪最伟大的发明
计算机的出现给人们的生活带来了巨大的改变,那么它是如何发展起来的呢?开始人们致力于能够进行四则运算的机器,是通过机械齿轮运作的加法器,而后是精度只有12位的乘法计算器,直到1847年Charles Babbages开发出能计算31位精度的机械式差分机,这台差分机被普遍认为是世界第一台机械式计算机。随着电子物理的发展,真空二极管、真空三极管问世,到1939年第一部用真空管计算的机器被研制出来,该机器是能进行16位加法运算的机器;随后,氖气灯(霓虹灯)存储器、复杂数字计算机(断电器计数机)、可编写程序的计数机,被一一研制出来。1946年,第一台电子管计算机ENIAC在美国被研制出来,这台计算机占地170平方米,重30吨,有1.8万个电子管,用十进制计算,每秒运算5000次。计算机从此进入了电子计算机时代,期间经历了真空管计算机、晶体管计算机、集成电路计算机、大规模集成电路计算机4个阶段,每一个阶段都是随着电子物理的发展而发展的,后来晶体管的出现取代了电子管,将电子元件结合到一片小小的硅片上,形成集成电路(IC),在一个芯片上容纳几百个甚至上千个电子元件形成了大规模集成电路(LSI),直到现在已经出现了32纳米制作的电子芯片,可谓是发展迅速。计算机运行速度越来越快,从第一台计算机的每秒5000次到现在的2GHz。
现在计算机已经应用到各个领域,包括科学计算、信号检测、数据管理、辅助设计等,人们的生活已经渐渐离不开它,所以说计算机是20世纪最伟大的发明。1.1.2 C++发展历程
早期的计算机程序语言就是计算机控制指令,每条指令为一组二进制数,不同的计算机都有不同的计算机指令集。使用二进制指令集开发程序是件很头痛的事,需要记住大量的二进制数,为了便于记忆,人们将二进制数用字母组合代替,以字符串关键字代替二进制机器码的编程语言称为汇编语言,汇编语言被称为是低级语言。虽然汇编语言比机器码容易记忆,但仍然存在可读性差的缺点,大量的跳转指令和地址值很难让程序员在很短的时间理解程序的意思,于是编程语言进入了高级语言时代。
第一个高级语言是美国尤尼法克公司在1952年研制成功的Short Code,但被广泛使用的高级语言是FORTRAN,它是由美国科学家巴克斯设计并在IBM公司的计算机上实现的。但FORTRAN语言和Algol60主要应用于科学和工程计算,随后出现了Pascal和C语言。C语言是在其他语言基础上发展起来的。首先是Richard Martin开发一种高级语言BCPL,随后Ken Thompson使用BCPL语言对其进行了简化,形成一门新的语言——B语言,但B语言没有类型的概念,Dennis Ritchie对B语言进行研究和改进,在B语言基础上添加了结构和类型,并将这个改进后的语言命名为C语言,寓意很简单,因为字母C是字母B的下一个字母,预示着语言的发展。
本书所讲述的C++语言就是从C语言发展而来的。Stroustrup经过钻研在C语言中加入类的概念,C++最初的名字是C with Class,到1983年12月由Rick Mascitti建议改名为CPlusPlus,即C++。最开始提出类概念的语言是Simula,它具有很高的灵活性,但无法胜任比较大型的程序。此后在Simula语言基础上发展的语言Smalltalk才是真正的面向对象语言,但Smalltalk-80不支持多继承。
C++从Simula继承了类的概念,从Algol68继承了运算符重载、引用以及在任何地方声明变量的能力,从BCPL获得了“//”注释,从Ada得到了模板、名字空间,从Ada、Clu和ML取来了异常。1.1.3 C++中的杰出人物Dennis M.Ritchie
Dennis M. Ritchie被称为C语言之父,UNIX之父,生于1941年9月9日,哈佛大学数学博士,现任朗讯科技公司贝尔实验室(原AT&T实验室)下属的计算机科学研究中心系统软件研究部的主任一职。他开发了C语言,并著有《C程序设计语言》(The C Programming Language)一书,还和Ken Thompson一起开发了UNIX操作系统。他因杰出的工作得到了众多计算机组织的公认和表彰,1983年,获得美国计算机协会颁发的图灵奖(又称计算机界的诺贝尔奖),还获得过C&C基金奖、电气和电子工程师协会优秀奖章、美国国家技术奖章等多项大奖。Bjarne Stroustrup
Bjarne Stroustrup 1950年出生于丹麦,先后毕业于丹麦阿鲁斯大学和英国剑桥大学,AT&T大规模程序设计研究部门负责人,AT&T贝尔实验室和ACM成员。1979年,Stroustrup开始开发一种语言,当时称为“C with Class”,后来演化为C++。1998年,ANSI/ISO C++标准建立,同年,Stroustrup推出其经典著作The C++ Programming Language的第三版。Scott Meyers
Scott Meyers是世界顶级的C++软件开发技术权威人士之一,他拥有Brown University的计算机科学博士学位,其著作Effective C++和More Effective C++很受编程人员的喜爱。Scott Meyers曾经是《C++ Report》的专栏作家,为《C/C++ Users Journal》和《Dr. Dobb’s Journal》撰过稿,为全球范围内的客户提供咨询活动。他还是Advisory Boards for NumeriX LLC和InfoCruiser公司的成员。Andrei Alexandrescu
Andrei Alexandrescu被认为是新一代C++天才的代表人物,2001年撰写了经典名著Modern C++ Design,其中对Template技术进行了精湛运用,第一次将模板作为参数在模板编程中使用,该书震撼了整个C++社群,开辟了C++编程领域的“Modern C++”新时代。此外,他还与Herb Sutter合著了C++ Coding Standards。他在对象复制(objectcopying)、对齐约束(alignment constraint)、多线程编程、异常安全和搜索等领域作出了巨大贡献。Herb Sutter
Herb Sutter是C++ Standard Committee的主席,作为ISO/ANSI C++标准委员会的委员,Herb Sutter是C++程序设计领域屈指可数的大师之一。他的Exceptional系列三本书(Exceptional C++、More Exceptional C++和Exceptional C++ Style)成为C++程序员的必读书。他是深受程序员喜爱的技术讲师和作家,是《C/C++ Users Journal》的撰稿编辑和专栏作者,曾发表了上百篇软件开发方面的技术文章和论文。他还担任Microsoft Visual C++架构师,和Stan Lippman一道在微软主持VC 2005(即C++/CLI)的设计。Andrew Koenig
Andrew Koenig是AT&T公司Shannon实验室大规模编程研究部门中的成员,同时也是C++标准委员会的项目编辑,是一位真正的C++内部权威。Andrew Koenig的编程经验超过30年,其中有15年在使用C++,已经出版了超过150篇和C++有关的论文,并且在世界范围内就这个主题进行过多次演讲,对C++的最大贡献是带领Alexander Stepanov将STL引入C++标准。1.2 常用开发环境视频讲解:光盘\TM\lx\1\常用开发环境.exe
在使用C++语言时,需要选择一款开发环境,那么有哪些环境可供用户选择呢?下面就对一些常用的C++语言开发环境进行简单的介绍。1.2.1 Visual C++ 6.0
Visual C++ 6.0是由微软开发的C++开发环境,它是Visual Studio集成开发环境中的一员。Visual C++ 6.0可以创建Windows应用程序、DLL动态链接库、COM组件以及ActiveX控件等。Visual C++ 6.0开发环境如图1.1所示。图1.1 Visual C++ 6.0开发环境1.2.2 Visual C++ 2008
Visual C++ 2008是微软继Visual C++ 6.0之后新设计的集成开发环境,它更加支持C++标准规范,而且还支持托管程序的编译和WebService。应该说Visual C++ 2008更加强大,无论是功能上还是编译速率上都有很大提高。Visual C++ 2008开发环境如图1.2所示。
试读结束[说明:试读内容隐藏了图片]