-
主要内容:
本部分是您成为VC++软件工程师必备的阶段,如果您没有任何基础,学习C++能快速让您进入编程领域,建议配合书籍《C++入门经典》
课程名称章节名称内容介绍
C++语言超基础精讲
第1讲:程序设计语言原理及C++入门(6课时)
01、什么是编程?
02、程序设计领域
03、语言评估标准
04、影响语言设计的因素
05、语言分类
06、语言设计中的权衡
07、实现方法
08、程序设计环境
09、C语言简史
10、C++语言简史
11、学习程序语言的一般方法
12、C++语言入门
第2讲:基本数据类型扩展数据类型和表达式(3课时)
01、C++数据类型
02、常量和变量
03、C++运算符
04、赋值运算符与赋值表达式
05、算数运算符与算数表达式
06、逻辑运算符和逻辑表达式
07、?表达式
08、,表达式
09、指针和引用运算符和表达式
10、Sizeof运算符
11、类型转换运算符
12、数组下标运算符
第3讲:控制语句(2课时)
01、顺序控制语句
02、选择控制语句
03、循环控制语句
04、跳转语句
第4讲:函数(2课时)
01、函数概述
02、函数的定义和声明
03、函数的调用
第5讲:数组(2课时)
01、一维数组
02、二维数组
03、多维数组
04、数组与函数
05、数组的应用
第6讲:指针(3课时)
01、指针的概念
02、指针的定义和使用
03、指针运算
04、void指针和const指针
05、指针与数组
06、动态内存分配
07、指针与字符串
08、指针与函数
第7讲:结构体与共用体(2课时)
01、结构体的概念
02、结构体类型变量的定义方法
03、结构体变量的使用形式和初始化
04、结构体数组
05、结构体与指针
06、结构体与函数
07、共用体
第8讲类和对象(2课时)
01、类和对象
02、类对象
03、构造函数和析构函数
04、类的初始化
05、复杂的对象表示
06、堆与拷贝构造函数
07、this指针
08、引用
09、常类型
第9讲:运算符重载(1课时)
01、运算符重载概述
02、运算符重载的实现
03、单目运算符重载
04、双目运算符重载
05、->运算符重载
06、赋值运算符重载
07、下标运算符重载
08、运算符new与delete重载
09、逗号运算符重载
10、类型转换运算符重载
第10讲:静态成员与友元(1课时)
01、静态成员
02、友元
03、友元应用实例
第11讲:继承和派生类(1课时)
01、基类和派生类
02、单继承
03、多继承
04、虚基类
第12讲:模板(1课时)
01、模板的概念
02、函数模板
03、类模板
第13讲:多态性与虚函数(1课时)
01、普通成员函数重载
02、派生类指针
03、虚函数
04、纯虚函数与抽象类
第14讲:异常处理(1课时)
01、异常处理概述
02、异常处理的基本思想
03、C++异常处理的实现
04、标准C++库中的异常类
05、多路捕获
06、含有异常的程序设计
-
内容简介:
本部分是您成为VC++软件工程师必备的阶段,如果您没有任何基础,学习C++能快速让您进入编程领域,建议配合书籍《C++入门经典》
更多详细免费学习培训视频看我用户名,大家加入一起学习,交流讨论
-
关键词:
VC++、VS2008、MFC、Office Fluent UI、CAD系统、结构化存储、自定义窗口、消息映射机制、多线程、CxImage库、Lua脚本引擎、MDI、对话框、软件设计、光栅图、矢量图等。
-
本培训将实现的CAD系统介绍:
本培训视频中要带领学员实现的CAD系统是一个简单的基于2D图形的CAD系统,拥有以下基本功能: 基本的几何图形(点、线、矩形、圆、位图等)绘制的功能; 具有基本图像处理能力(依托CxImage库); 拥有基于脚本编程语言Lua脚本的命令输入环境; 自定义格式的CAD矢量图形文件; 具有简单2D矢量动画功能; 具有高可扩展性可作为较复杂的CAD系统的基本框架,学员可以以此为基础开发一些较实用的CAD系统。
-
培训的主要目标:
学员通过本次培训后,可以达到熟练使用VS2008环境及使用MFC进行编程的基本能力。同时学员将具备建立较复杂软件开发框架的能力和基础。课程学习完毕后学员还将具备基本的软件分析、设计、实现能力,并能够独立承担一些基于MFC的应用程序开发实现的任务;学员将牢固的掌握MFC窗口类、绘图类、集合类、调试类等的设计、使用方法;同时掌握使用VS2008调试程序、跟踪程序错误的技能;掌握使用VS2008性能分析工具分析分析软件性能瓶颈的方法;具备使用VS2008 MFC从事软件开发工作的能力。达到一般公司VC++软件开发人员的基本能力要求。
-
本培训的主要任务:
本次培训将通过带领学员自己动手实现一个简单的CAD系统(TinyCAD)的方式,达到上述的培训目标。培训过程中学员将跟随讲师一步步实现一个基于MFC 及 最新Office Fluent UI界面开发库的简单CAD系统(TinyCAD)。
-
培训课程特色:
该视频课程培训讲师是具有十多年实际软件开发工作经验的资深软件工程师。课程内容注重实战,注重学员实际软件开发能力的培养,同时结合当前主流软件公司对软件就业人员的一般要求进行贴合实际的软件开发素质的培训和培养。培训课程使用音视频的多媒体方式,免去学员看书学习的痛苦,同时又可以让教师贴近学员进行一对一、手把手的教学。较之传统MFC类培训视频教程,增加了全新的内容,新增了VS2008(+ SP1)环境讲解,增加了较流行的开源代码库的讲解(Lua、CxImage),增加了对于最新的类似Office Fluent UI界面库的应用开发讲解,增加了使用VS2008环境进行软件调试、软件性能分析的能力培训内容。培训课程注重于学员基本功的训练,实际软件开发能力的培养。本视频培训课程是一套适用于初、中级VC++开发人员实际软件开发能力培养的不可多得的视频教材。
课程名称章节名称内容介绍VC++系列入门之VS2008 MFC类库精讲(项目实战CAD系统)第1讲:VS2008 IDE环境的基本使用方法(4课时)
01、认识IDE环境 了解VS2008 IDE环境
02、学习VS2008环境设置
03、学用工程向导
04、初识Office Fluent UI
05、理解应用程序帮助系统(MSDN)
06、理解VS2008解决方案要素
07、学用VS2008宏脚本
第2讲:VS2008 调试环境的使用(2课时)
01、掌握启动调试环境的主要方法
02、掌握各调试信息窗口的作用和使用方法
03、掌握定位最终错误位置的正确方法
04、掌握应用程序调试版本和发行版本的区别及编译方法
05、掌握常用的调试技巧
06、掌握MFC程序的一些调试技巧
第3讲:VS2008性能分析工具(1课时)01、掌握性能分析工具的使用方法
02、掌握查看性能分析报告的方法
03、掌握分析应用程序性能瓶颈的方法第4讲: MFC类库的设计目标、设计方法(2课时)
01、初步掌握MFC
02、深刻理解MFC的设计目标
03、理解MFC封装Windows API的方式方法以及MFC与API的关系
04、学会查看MFC的源代码
第5讲: MFC体系结构(11课时)
01、MFC类库体系结构
02、MFC类库概览
03、MFC类库骨干基类介绍
04、CObject类特性
05、MFC RTTI 特性
06、Windows 消息机制和MFC 消息机制
07、CCmdTarget类特性
08、Win32窗口知识和CWnd类特性
09、CView类和CDocument类以及文档视图结构
10、CDialog类特性
11、CDC类特性
12、MFC集合类的特性和使用方法
13、MFC 应用类型和应用框架
14、MFC 应用程序开发的一般方法;
第6讲:CAD系统设计概论(5课时)01、学习和理解什么是CAD系统
02、CAD系统设计概述
03、Windows GDI介绍
04、2D计算机图形学
05、理解什么是光栅图、什么是矢量图,了解二者的特点和用途
06、TinyCAD系统设计、主要功能和实现的方法
第7讲: MDI框架和TinyCAD框架实现(6课时)01、MDI框架结构
02、MDI内部结构以及Document\View\Frame的创建
03、使用向导生成TinyCAD系统的基本框架
04、为TinyCAD添加CTinyCADZoomView类,并修改视图派生路径
05、添加和完善TinyCAD界面的文件列表控件面板
06、掌握Fluent UI界面库的主要特点和基本使用方法第8讲: Lua脚本库和TinyCAD图形引擎实现(5课时)01、Lua库和Lua脚本语言
02、为TinyCAD系统添加Lua库支持
03、CScrollView的使用和MFC图形类介绍
04、扩展图形引擎的命令函数第9讲:TinyCAD文档类和命令系统实现(9课时)01、TinyCAD缩放命令控制的实现(在CTinyCADZoomView中添加坐标变换支持函数)
02、TinyCAD文档结构
03、TinyCAD文档类实现
04、Fluent UI对话框用法和文档尺寸定义对话框
05、TinyCAD视图更新的控制
06、TinyCAD命令系统和输出错误信息
07、TinyCAD图形的属性和Fluent UI属性窗口的使用第10讲:CxImage库和扩展TinyCAD图像支持(2课时)01、CxImage库介绍和相关资源
02、为TinyCAD项目添加CxImage库支持
03、.实现关于CxImage的新图形命令函数第11讲:鼠标消息处理(3课时)01、CRectTracker的使用方法
02、添加工具箱面板的实现
03、处理鼠标消息
04、添加文件视图面板的代码第12讲:TinyCAD简单矢量动画系统(4课时)01、计算机动画基本原理
02、计算机2D动画的一般方法介绍(画擦法,双缓冲法)
03、TinyCAD动画系统设计
04、理解消息循环和定时器打造高性能定时消息循环
05、理解消息循环带来的编程思想的一些转变
06、Windows下的高性能计时器对象
07、改写动画线程类的Run函数添加高性能计时器
08、动态创建动画系统的Frame/View结构
09、在主应用面板中添加启动动画的功能按钮;
10、动画实际帧数统计计算方法
11、TinyCAD项目总结和扩展展望
-
内容简介:
本部分主要讲解了Windows高级编程(内存管理+调试+句柄+进程+线程同步+动态链接库)等内容,课程共分十四章进行讲解,如下:
课程名称章节名称内容介绍Windows服务器与网络编程第一部分第0章:课程简介(1课时)
课程内容概述
课程目标概述
课程体系结构
课程需要的准备工作(下载工具、准备基本代码)
第1章:Windows内存管理(9课时)
01、现代计算机体系结构基础和学习内存管理的意义
02、x86 32位系列CPU内存管理机制概述
03、Windows内存管理机制
04、进程地址空间、页面缓冲池、非页面缓冲池
05、Windows内存管理函数及基本内存管理方法
06、标准C内存管理函数和C++ new 、delete运算符
07、Windows堆函数使用及性能评估
08、使用PAE、4GT、AWE获得更多内存的访问( >4GB以上 )
09、利用Windows内存函数重载new 和 delete运算符
10、打造自己的内存池
第2章:UINCODE字符串和安全字符串函数(3课时)
01、字符集种类,单双字节字符集,宽字节字符集;
02、为什么使用UNICODE
03、字符集转换(Win32字符集转换API ,UTF-8等编码转换)
04、UNICODE和其他字符集混合编程问题
05、C运行时库UNICODE扩展和安全性问题
06、安全字符串函数和使用
07、ATL中的转换封装支持
08、封装字符串转换支持类第3章:错误处理和结构化异常处理(4课时)
01、错误码和详细错误信息的获取
02、结构化异常处理的基本框架
03、结构化异常处理的使用
04、结构化异常处理和C++异常处理的比较
05、在VC++中混用结构化异常处理和C++异常处理
06、封装自己的异常模块
第4章:获取系统信息(1课时)
01、了解系统信息
02、使用系统信息
03、封装系统信息类
第5章:Windows调试支持(2课时)
01、Windows调试支持
02、进程、线程的调试创建及接管调试信息
03、调试函数及使用
04、打造基本的调试支持环境
第6章:Windows句柄和对象(2课时)
01、句柄和对象简介
02、Windows GUI 和 GDI对象
03、Windows 内核对象
04、内核对象名字空间简介
05、对象私有名字空间函数及使用(Vista、Win2008)
06、实用技术-枚举对象列表
第7章:系统安全性和基本访问控制(4课时)
01、Windows安全对象模型
02、访问标记、安全模块、安全描述符、访问控制列表
03、优先权和优先权使用
04、创建安全描述符、使用EditSecurity界面化编辑安全描述符
05、GRSLib中的安全支持第8章:Windows多任务基础(2课时)
01、并行、串行、混合程序模型基础
02、Windows多任务和任务调度介绍
03、任务优先级、亲缘性、
04、进程与线程句柄和标识符ID第9章:Windows进程(3课时)
01、Windows进程和入口
02、进程环境变量、亲缘性和当前目录
03、进程默认堆和堆管理
04、进程对象列表
05、创建销毁进程、子进程
06、重定向子进程的输入和输出
07、枚举系统中的进程列表及PSAPI使用
第10章:Windows线程(6课时)
01、多线程和线程函数
02、创建线程和线程退出
03、线程栈和线程局部存储TLS
04、暂停线程与线程寄存器环境
05、线程消息循环和窗口、GDI对象
06、线程调度优先级
07、线程亲缘性
08、线程同步和异步基础
09、线程可警告状态
10、线程APC队列
11、线程消息队列
12、得到线程的一些统计信息
13、C/C++库与多线程
14、多线程改造一些串行算法为并行算法的例子
15、打造GRSLib类库的线程基类
第11章:线程同步和等待(4课时)
01、理解线程同步模型
02、等待函数原理及用法
03、APC和APC队列
04、关键代码段
05、事件对象
06、互斥对象
07、信号对象
08、Vista和2008版上的轻量级锁对象(SRW)
09、一次性初始化对象(One-time Initialization)
10、互锁的原子操作函数
11、基本的多线程安全数据结构——互锁单链表(Interlocked Singly Linked Lists)
第12章:动态链接库(5课时)
01、程序链接方式和程序库
02、动态链接库基础
03、动态链接库加载方式(启动加载、运行时加载、延迟加载)
04、动态链接库加载基址和程序空间划分
05、纯资源动态链接库及加载
06、动态链接库和TLS
07、动态链接库和共享内存
08、枚举进程中加载的DLL模块
09、动态链接库和C/C++运行时库
10、插入动态库方法
第13章:资源(2课时)
01、Windows应用程序资源基础
02、使用Windows应用程序资源
03、枚举可执行文件中的资源
04、使用资源更新
第14章:文件和文件映射(6课时)
01、Windows文件支持和文件基本操作
02、建立和使用临时文件
03、字符设备和串口编程
04、文件查找和文件夹遍历
05、监视目录和目录变化
06、文件映射和进程间共享内存
07、磁盘低级操作——直接读写磁盘扇区
08、IOCP高性能访问文件及自定义日志系统
09、打造自己的文件操作基类
-
内容简介:
本部分主要讲解了Windows服务器与网络编程之Windows高级编程第二部分(进程池 线程池 服务 日志与性能计数 磁带备份)等内容,课程共分六章进行讲解,如下:
课程名称章节名称内容介绍Windows服务器与网络编程第二部分第15章: Windows作业和进程池(2课时)
01、作业对象介绍
02、创建作业对象
03、添加进程到作业对象
04、停止作业对象中所有的进程
05、获得作业的统计信息
06、GRSLib中作业对象的封装
第16章:Windows纤程(1课时)
01、纤程对象介绍
02、将线程变为纤程
03、纤程函数
04、自定义纤程调度
05、纤程的本地存储(FLS)
06、GRSLib中关于纤程的封装
第17章:线程池和Win2008新线程池(3课时)
01、线程池基础知识
02、异步调用队列
03、内核对象等待回调队列
04、定时回调队列
05、完成端口回调队列
06、回调队列型线程池的缺陷
07、Win2008新线程池及用法
08、GRSLib中线程池部分的封装
第18章:磁带备份(1课时)
01、Windows磁带备份支持介绍
02、磁带备份的初始化
03、磁带设备的输入输出
第19章: Windows服务(6课时)
01、Windows服务进程基础
02、服务进程主函数和服务程序基本结构
03、服务安装、删除、启动、停止
04、服务对象安全和服务启动帐号
05、枚举系统中已安装的服务
06、服务的调试和服务中显示UI
07、打造GRSLib中的服务程序框架
第20章:Windows日志和性能监视(5课时)
01、理解Windows事件日志
02、事件日志模型和使用
03、消息文件和编译方法
04、GRSLib中的Windows日志模块
05、Windows性能计数器基础知识
06、使用注册表函数操作Windows性能计数器
07、使用PDH专用API族操作Windows性能计时器
08、GRSLib中关于Windows性能计数器封装的考虑
-
内容简介:
本部分主要讲解了Windows服务器与网络编程之Windows高级编程第二部分(XML和XML解析引擎),详细内容介绍如下:
课程名称章节名称内容介绍Windows服务器与网络编程第二部分XML和XML解析引擎01、XML语言基础
02、XSD
03、XPath
04、XSL/XSLT
05、XQuery
06、XML解析引擎模型(DOM/SAX)
07、XML解析引擎介绍(MSXML parser、TinyXML引擎、Intel XML parsert
08、COM编程基础知识
09、COM环境初始化和释放
10、COM变量类型VARIANT
11、BSTR类型介绍
12、COM扩展支持类和函数(智能指针等)
13、MSXML parser编程模型和使用方法及示例
14、GRSLib中COM和XML基础支持
-
内容简介:
本部分主要讲解了Windows服务器与网络编程之Windows高级编程第二部分(数据库访问接口OLEDB+ADO)详细内容介绍如下:
课程名称章节名称内容介绍Windows服务器与网络编程第二部分数据库访问接口OLEDB+ADO01、数据库访问接口简介(ODBC、OLEDB、ADO、ADO.Net)?
02、数据库系统简介?
03、OLEDB简介?
04、MSDAC介绍和帮助获取?
05、OLEDB编程基础?
06、数据源对象和连接数据库?
07、会话对象和创建会话事务对象?
08、命令对象及接口
09、结果集对象及接口?
10、列信息获取和动态绑定?
11、数据增删改操作及延迟提交?
12、多结果集对象?
13、SQL预处理和参数化查询?
14、输入输出参数和存储过程调用?
15、数据源枚举?
16、无SQL直接操作表?
17、数据源动态结构分析和架构结果集?
18、BLOB字段插入和读取操作?
19、结构化绑定(静态绑定)
20、日期时间型数据列处理?
21、数据类型转换对象?
22、数据变更通知?
23、结果集查找操作及IRowsetFind接口?
24、出错信息处理?
25、使用事务处理?
26、ATL中的OLEDB模版及用法?
27、ADO组件及用法?
28、ADO和OLEDB混合编程?
29、使用ADO调用存储过程?
30、GRSLib中数据库访问组件的添加
-
内容简介:
本部分内容为VC++系列之Windows服务器与网络编程第三部分(网络编程超基础)如下:
课程名称章节名称内容介绍Windows服务器与网络编程实战第三部分
第23章:计算机网络和网际协议(TCPIP)
01、计算机网络基础
02、网络协议
03、TCP/IP协议族
04、IP地址家族和划分
05、ICMP、ARP、PARP、BOOTP、DHCP
06、TCP协议和UDP协议
07、DNS、HTTP、FTP、POP3、SMTP简介
08、D类地址、多播(组播)、IGMP协议
09、QoS和服务质量
第24章:标准套接字SOCKET原理及编程
01、网络协议抽象特征和协议枚举
02、协议无关网络编程接口——伯克利套接字(BSD Socket)
03、Winsock简介和常用头文件及库文件
04、Winsock环境的初始化和卸载
05、SOCKET对象及句柄
06、SOCKET的创建
07、直接利用协议结构创建SOCKET
08、客户-服务端编程模型
09、简单echo服务器和客户端(TCP/UDP)
10、SOCKET辅助函数
11、系统辅助工具命令(Ping,IPconfig,Route,ARP,NetStat)
12、GRSLib中添加的内容
第25章:WinSock工作模式和编程模型
01、套接字工作模式和模型简介
02、阻塞模式
03、非阻塞模式
04、select模型
05、消息模型
06、事件模型
07、重叠I/O模型
08、IOCP模型
第26章:WinSock2.0API和SOCKET池
01、SOCKET五种工作模型的简单性能分析
02、Winsock2.0新扩展函数简介
03、AcceptEx函数及工作原理
04、GetAcceptExSockAddr函数
05、TransmitFile函数及工作原理
06、TransmitPackets函数及工作原理
07、ConnectEx函数
08、DisconnectEx函数
09、WSARecvMsg函数
10、Winsock2.0扩展函数的动态加载方法
11、SOCKET池原理和编程模型
12、IOCP+SOCKET池
13、聚集/散播I/O原理和编程方法
14、综合的性能考虑
15、GRSLib中IOCP+SOCKET池的封装
第27章:套接字IO控制命令和辅助工具函数
01、控制SOCKET选项的API
02、getsockopt/setsockopt函数
03、SOL_SOCKET选项级别选项详解
04、IPPROTO_IP选项级别选项详解
05、IPPROTO_IPV6选项级别选项详解
06、IPPROTO_RM选项级别选项详解
07、IPPROTO_TCP选项级别选项详解
08、ioctlsocket/WSAIoctl函数
09、标准IO控制命令
10、其它的IO控制命令
第28章:多播(组播)
01、组播原理
02、有根组播/无根组播
03、支持组播协议的判定
04、IP组播及原理
05、IGMP简介
06、组播编程一般方法
07、setsockopt方式组播
08、WSAIoctl源过滤组播及组播炸弹预防
09、WSAJoinLeaf方式组播
第29章:网络编程辅助利器网络监视工具-MS Network Monitor
01、认识Microsoft Network Moniter工具
02、熟悉MSNM基本抓包操作
03、学习MSNM的过滤条件表达式的编写
04、学习MSNM的自定义脚本协议解析器的编写
-
内容简介:
本课程为VC++系列之Windows服务器与网络编程第四部分(高级网络编程部分) 如下:
课程名称章节名称内容介绍Windows服务器与网络编程第四部分
第30章:TCPIP协议族详解
01、回顾已学SOCKET编程方法及分析知识局限
02、再看TCP/IP分层
03、链路层功能介绍
04、网络层功能介绍
05、传输层功能介绍
06、应用层功能介绍及应用层设计建议
07、OSI会话层功能介绍
08、OSI表示层功能介绍
09、TCP/IP分层原理及数据传输原理示意
10、IP协议详解
11、ICMP协议详解
12、UDP协议详解
13、TCP协议详解
14、学习协议的目的和意义
第31章:原始套接字和ICMP、PING TRACEROUTE工具实现
01、原始套接字原理
02、原始套接字创建
03、原始套接字创建需要注意的细节问题(限制/选项)
04、ICMP Ping报文格式及介绍
05、利用原始套接字实现Ping命令
06、路由发现原理介绍
07、TraceRoute命令原理及实现
08、利用原始套接字实现UDP协议封包
09、利用原始套接字实现TCP协议的方法
10、GRSLib中关于Ping功能和TraceRoute功能的封装
第32章:HTTP和FTP协议原理及服务端实现
01、FTP协议详解
02、FTP Server实现和测试
03、HTTP协议详解
04、HTTP Server实现和测试
05、本讲作业
第33章:P2P和NAT穿透流媒体传输
01、P2P思想来源
02、P2P原理
03、P2P核心关键技术
04、NAT和NAPT
05、NAT打洞和穿透技术
06、流媒体原理
07、流媒体领域面临的若干问题
08、RTP/RTCP/RTSP/RSVP协议介绍
09、JRTPLib介绍
10、本讲作业
第34章:WinSock2 SPI
01、WinSock SPI介绍
02、WinSock SPI原理
03、WinSock SPI封装和接口
04、WinSock SPI安装
05、WinSock SPI示例
06、WinSock SPI调试
07、WinSock SPI用途