- 1、本文档共98页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Windows程序设计(Visual C++版)( Windows Programming Based on Visual C++ ) 课时安排 第一章 从C++到C++/CLI 内 容 §1.1 C++/CLI简介 CLI:公共语言基础构造(Common Language Infrastructure),是由ECMA(欧洲计算机制造商协会)成立专家组,并结合ISO标准、开发形成的一个可扩展语言标准,它被VS.NET2005的C++编译器支持。 CLI是一个虚拟机平台,C++/CLI是标准C++的一个超集。 CLI同样是增加了一层间接(indirection)来实现一种抽象(abstract),它定义了一个介于操作系统和应用程序软件之间的组件平台。 C++/CLI的目的是把C++带到CLI平台上,使C++能够在CLI平台上发挥最大的能力,而并非把C++约束在CLI平台(CLI本身也是ISO标准化的)上。相反,原来标准C++的能力丝毫没有减弱,并且,通过C++/CLI中的标准扩展,C++具有了原来没有的动态编程能力以及一系列的.NET特性。这些扩展并非是专有的,而是以一种标准的方式呈现。 §1.1 C++/CLI简介 通用类型系统(Common Type System,简称CTS) 类型规范; 任何一门CLI编程语言中提供的类型和成员都是CTS的一个子集 ; C++/CLI是目前对CTS描述最为完整的高级语言; 通用语言规范(Common Language Specification,简称CLS) CLS是用以确保所有CLI语言能够互操作的一组规则; 它定义了所有CLI语言都必须支持的一个最小功能集(一个CTS的子集); 各CLI语言可以选择自己对CTS的一部分的映射,但是它至少应该支持CLS所定义的最小功能集; §1.1 C++/CLI简介 元数据 (Metadata) 元数据是CLI组件平台的灵魂; 元数据赋予了无限的组件管理、服务、动态能力; C++/CLI与ISO-C++的本质区别就在于对元数据的支持; 虚拟执行系统(Virtual Execution System,简称VES) VES为CLI程序提供了一个在各种可能的平台上加载和执行托管代码(即通用中间语言指令集)的虚拟机环境; VES实现并贯彻了CTS模型; VES定义了一个相关的机器模型和状态、一组控制流构造,以及一个异常处理模型; 其他:如可移植文件(portable file)格式,通用中间语言指令集,标准编程框架。 §1.1 C++/CLI简介 1、优雅流畅的语法和文法—C++/CLI为C++开发人员书写托管代码提供了一种非常自然的感觉,并且它提供了非托管代码到托管代码的平滑过度。以前所谓的“双重底线”问题现在已经荡然无存。 2、一流的CLI支持—CLI特色,例如垃圾收集服务(很大程度上避免内存泄漏)、属性、碎片集合和属类得到了直接支持,此外,C++/CLI还准许将这些特色用于本地非托管的类。 3、C++/CLI支持对本地编程和托管编程的无缝集成。集成不是简单混合,而是对象模型的集成。 4、在.NET与C++之间的沟壑上架起了一座桥梁。 5、新的Interop功能。在Visual Studio .NET 2003的所有基于 .NET Framework的语言当中,Visual C++ 2005提供了最好的interop功能。它可不像是纸上谈兵,如今具有了足够的能力来实现真实世界中的场景,一个最好的例子就是把Quake II移植到 .NET Framework平台上,而Visual C++ 2005则更加扩展了这项功能。 CLI主要的特色是元数据,是元数据赋予了CLI丰富的组件管理能力。 6、更好的代码优化。一个好的软件开发者总会想方设法提高软件的执行效率,编译器的编写者是一种特殊类型的开发者,不仅代码要执行效率高,而且由它们生成的代码也必须极有效率。因此,任何一个成功的编译器产品,优秀的后台优化是必不可少的。而在这方面,Visual C++ 2005脱颖而出。 §1.1 C++/CLI简介 有很多交叉应用。定位不同 C#:商业用程序 C++/CLI:面向系统级的应用程序。功能强大、服务多样的应用系统、未来的企业服务、关键性的组件、硬件驱动等等。 §1.1 C++/CLI简介 (1)运行Microsoft Visual Studio 2005。 (2)选择“文件(F)”→“新建(N)”→“项目(P)…”菜单,将弹出“新建项目”对话框;如果在“起始页”的“最近项目”中单击“创建”中的“项目(P)…”按钮也可实现该操作。 (3)在弹出的“新建项目”对话框中,在“项目类型”列表框中,点击“Visual C++项目”前的“+”,选择“Visua
您可能关注的文档
- 笔记本win7 快捷键 你不知道用法 超炫.doc
- 笔记本玩游戏无法全屏显示最经典解决办法.doc
- 病毒包装实验整体流程和原理.doc
- 病毒入侵微机的途径及防治研究(计算机应用论文).doc
- 程序设计 课件第9篇.ppt
- 程与物理演示厅的示范.pdf
- 第 4 篇 实用函数.pdf
- 第 5 篇 函数作为返回值.pdf
- 第 6 篇 多人Git.pdf
- 第 19 篇 数据列表编程.pdf
- 甘肃省XB师范大学附属中学2025届高三上学期一模诊断考试地理答案.doc
- 甘肃省XB师范大学附属中学2025届高三上学期一模诊断政治含解析.doc
- 安徽省皖江名校2024-2025学年高一上学期12月联考英语无答案.doc
- 2025年1月八省联考高考综合改革适应性测高三化学陕西山西宁夏青海卷无答案.doc
- 2025年1月八省联考高考综合改革适应性测高三化学四川卷无答案.doc
- 2025年1月八省联考高考综合改革适应性测高三政治陕西山西宁夏青海卷无答案.doc
- 2025年1月内蒙古自治区普通高等学校招生考试适应性测试(八省联考)历史无答案.doc
- 2025年1月内蒙古自治区普通高等学校招生考试适应性测试(八省联考)历史含解析.doc
- 2025年1月四川省普通高等学校招生考试适应性测试(八省联考)历史含解析.doc
- 2025年1月四川省普通高等学校招生考试适应性测试(八省联考)政治无答案.doc
文档评论(0)