首页 第2章 VC++开发基础

第2章 VC++开发基础

举报
开通vip

第2章 VC++开发基础null第2章 VC++开发基础第2章 VC++开发基础使用VC++和MATLAB进行混合编程时,涉及到的VC++编程方面的知识较多,包括C++面向对象程序设计、C++异常处理机制等C++编程基础知识;Windows程序内部运行机制、动态链接库基础等Windows编程基础知识;MFC框架程序、ActiveX控件等开发知识,另外也需要掌握VC++程序的调试和优化方面的知识。只要掌握了这些知识,才能在混合编程中更好的发挥出VC++的技术优势。2.1 C++面向对象程序设计2.1 C++面向对象程序设计C++是一...

第2章  VC++开发基础
null第2章 VC++开发基础第2章 VC++开发基础使用VC++和MATLAB进行混合编程时,涉及到的VC++编程方面的知识较多,包括C++面向对象程序设计、C++异常处理机制等C++编程基础知识;Windows程序内部运行机制、动态链接库基础等Windows编程基础知识;MFC框架程序、ActiveX控件等开发知识,另外也需要掌握VC++程序的调试和优化方面的知识。只要掌握了这些知识,才能在混合编程中更好的发挥出VC++的技术优势。2.1 C++面向对象程序设计2.1 C++面向对象程序设计C++是一种面向对象程序设计语言,目前在工程中得到了广泛应用。本节主要介绍面向对象的语言和方法、类,对象和消息等基本概念、C++面向对象程序设计特点以及实现方式等内容。2.1.1 面向对象语言和方法2.1.1 面向对象语言和方法面向对象语言(Object-Oriented Language,OOL)是以对象作为核心的程序设计语言,通过对象的描述和实现来实现程序。其核心思想包括类、对象、继承等概念的定义和描述。OOL与面向过程的编程语言的重要区别在于,能够直接地描述客观世界中的对象以及对象之间的关系。2.1.2 类,对象和消息2.1.2 类,对象和消息本节将介绍OOL的几个重要概念。包括对象、类、封装、继承、消息等,不同类型的OOL都会涉及到这些概念的全部或者部分。2.2 C++异常处理机制2.2 C++异常处理机制C++具有很强的纠错能力,具有较完善的异常处理机制。C++的异常情况主要包括语法错误和运行错误,语法错误就是程序中出现了不正确的语句,函数和类的定义等问题,导致编译程序无法进行,一些支持C++的开发工具如VC++会给出提示信息,用户可以根据信息给出的错误码和位置修改相应的程序代码。运行错误是指程序运行时发生的错误,通常与功能算法有关,比语法错误更难发现和解决。2.2.1 错误和异常2.2.1 错误和异常很多编程语言中没有严格区别错误和异常,但实际上从编程角度出发,两者的意义和结果是完全不同的。根据《美国传统字典》的定义,错误是指“背离公认代码行为的操作或者实例”。异常的定义是在程序执行过程中发生的中断指令正确 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 的事件。 2.2.2 异常处理的机制和实现2.2.2 异常处理的机制和实现异常处理机制是指编程语言和环境提供的用来有效地处理运行错误的工具。C++异常处理机制非常强大且灵活,除了try-catch-throw机制外,还提供了assert()和trace()等异常定位和追踪函数帮助进行异常处理。try-catch-throw机制是指异常处理结果由检查(try)、抛出(throw)和捕捉(catch)三个部分组成。需要检测的语句放在try块中,throw用来当出现异常时抛出一个异常信息,而catch则用来捕捉异常信息,如果捕捉到异常信息,就进行处理。2.2.3 VC++异常处理2.2.3 VC++异常处理VC++提供了对C语言、C++语言和MFC的异常(exception)处理。其中MFC的异常处理只支持C++。另外,微软公司对C和C++语言的异常处理进行了扩展,使用结构化异常处理机制,结构化异常处理(Structured Exception Handling,简称SEH)机制支持C和C++。2.3 Windows程序内部运行机制2.3 Windows程序内部运行机制Windows程序内部运行机制是开发Windows应用程序的基础,主要包括如何使用应用程序接口API(Application Programming Interface)与软件开发工具包Software Development Kit(SDK)等接口进行应用程序开发,还包括窗口与句柄的控制和试验,消息的处理等内容。2.3.1 API与SDK2.3.1 API与SDK应用程序接口API和软件开发工具包SDK是开发 Windows 应用程序的基础,其它MFC编程框架和类库等都是建立在它们之上。2.3.2 窗口与句柄2.3.2 窗口与句柄窗口是Windows应用程序与用户进行交互的接口,从物理上看是计算机屏幕上的一块矩形区域。在窗口中根据应用程序的功能提供了相应控件,用户根据功能 要求 对教师党员的评价套管和固井爆破片与爆破装置仓库管理基本要求三甲医院都需要复审吗 进行相应的操作。对于可视化的Windows应用程序,应该至少要有一个称为主窗口的窗口,即VC++ MFC中的基于对话框程序中的主对话框。2.3.3 消息与消息队列2.3.3 消息与消息队列Windows的应用程序是消息驱动的。等待Windows向它们传递输入信息,在获得输入信息后,系统把应用程序的输入信息传递给各个窗口的消息处理函数。该函数负责处理各种用户输入,处理完成后再将控制权交还给系统。2.4 动态链接库基础2.4 动态链接库基础动态链接库(Dynamic Link Library,DLL)是一种可执行文件的格式,是具有某些特定功能的函数和类的目标代码集合,用户可以根据需要自己开发或者使用别人提供的DLL。跟扩展名为exe的可执行文件不同,DLL 文件不能直接执行,但是可以由.exe 或者上一级DLL在执行时加载运行,执行相应的功能。在系统执行某些功能时,将相应的DLL文件调入系统内存进行解析执行。2.4.1 DLL与进程的地址空间2.4.1 DLL与进程的地址空间为了使用DLL 中的 API 函数,必须在应用程序中提供API 函数的声明文件(.h)和库文件(.lib)。为了能够正确定位到相应的API函数,需要导入库,这样在调用的 DLL文件中就可以找到对应 API函数的入口点。2.4.2 DLL分类2.4.2 DLL分类链接库分为静态链接库和动态链接库两种。静态链接库是指提供功能函数的目标代码,若应用程序调用链接库中的某个函数,则在程序的编译和链接阶段,将链接库中被调用函数的目标代码复制链接到运行文件中。 2.4.3 创建DLL模块2.4.3 创建DLL模块当一个应用程序需要用到一个DLL中的相关函数时,会涉及到很多文件和组件。一个可执行模块需要从另一个DLL模块中导入函数和变量,那么首先必须需要构建该DLL模块,然后才能构建该可执行模块。2.5 VC++程序编译链接的原理与过程2.5 VC++程序编译链接的原理与过程本节将简要介绍VC++程序编译链接的原理与过程。主要介绍程序设计编译原理和VC++程序编译链接过程,掌握编译链接的原理与过程,将有助于编写性能更高的程序。2.5.1 程序设计编译原理2.5.1 程序设计编译原理程序设计的编译主要是依靠编译程序和编译系统完成的。编译程序是指将用C/C++等高级语言编写的源程序翻译转换成功能等价的机器低级语言的计算机处理程序,如图2.9所示。编译系统指是编译程序和运行系统的组合。 2.5.2 VC++程序编译链接过程2.5.2 VC++程序编译链接过程在VC++可视化程序开发环境中,可执行程序的生成,主要包括编译过程(Compiling…)和链接过程(Linking…)等两个过程。2.6 MFC框架程序2.6 MFC框架程序MFC框架程序是VC++的一个重要组成部分,很多应用程序都是基于MFC框架开发的,使用MFC程序开发 模板 个人简介word模板免费下载关于员工迟到处罚通告模板康奈尔office模板下载康奈尔 笔记本 模板 下载软件方案模板免费下载 向导,可以自动建立灵活的应用程序框架。本节将介绍MFC AppWizard的使用方法,并对基于MFC的程序框架进行分析说明。2.6.1 MFC AppWizard2.6.1 MFC AppWizardMFC AppWizard是VC++提供的生成程序框架的向导工具,使用它可以帮助自动生成基于MFC框架的应用程序。下面介绍如何使用MFC AppWizard,创建一个基于MFC的多文档界面(MDI)应用程序示例MultiDocumentPro。2.6.2 基于MFC的程序框架剖析2.6.2 基于MFC的程序框架剖析MFC封装了C++ 基础类库,封装了Windows API 函数的绝大多部分功能。MFC专门用于 Windows 平台上的编程。为了更好地理解MFC的工作机理,首先需要了解Windows MFC类的继承结构。2.7 ActiveX控件2.7 ActiveX控件ActiveX是Microsoft公司对于一系列策略性面向对象程序技术和工具的总成,可以方便地被应用程序调用,实现相应功能。本节将介绍ActiveX控件的分类和应用。2.7.1 概述2.7.1 概述ActiveX包括了一系列策略性面向对象程序技术和工具,它是一个开放的集成平台,包括ActiveX插件、ActiveX文档和ActiveX 脚本等。 ActiveX插件以前也叫做OLE控件或OCX控件,包括一些软件组件或对象,可以将其插入应用程序或者WEB网页,在运行时候调用。 2.7.2 ActiveX控件分类2.7.2 ActiveX控件分类根据ActiveX控件在程序中的作用,ActiveX控件包括自动化控制器、自动化服务器、ActiveX文档、控件和ActiveX容器等几种类型2.7.3 ActiveX控件应用2.7.3 ActiveX控件应用作为一种可重用的软件组件,通过使用 ActiveX控件,可以很快地在本地客户端应用程序、网页、开发工具等不同应用中加入特殊的功能。目前,已有2000多个商用ActiveX控件,开发ActiveX控件可以使用VB,C/C++,Java和C#等多种编程语言。2.8 VC++程序的调试和优化2.8 VC++程序的调试和优化程序调试阶段可以说是整个程序开发中最重要的阶段,经过调试和优化的程序才可以提交给用户使用。本节将介绍VC++程序的调试和优化的内容和方法。2.8.1 VC++程序调试方法和过程2.8.1 VC++程序调试方法和过程在使用MFC建立了VC++框架程序后,根据功能要求添加各类资源(包括菜单和对话框及其控件等),实现消息映射,添加功能代码后,就到了程序的编译调试阶段,程序调试阶段可以说是整个程序开发中最重要的阶段,也是最耗费时间和精力的阶段。2.8.2 VC++程序优化 2.8.2 VC++程序优化 程序优化从理论上说包括性能分析理论,如何提高算法的效率等方面,从实践上则需要从流程、算法实现和数据结构、变量等方面进行考虑。本节主要介绍一些常用的优化C/C++代码的方法。
本文档为【第2章 VC++开发基础】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_385546
暂无简介~
格式:ppt
大小:68KB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2012-11-11
浏览量:7