当前位置导航:炫浪网>>网络学院>>编程开发>>C++教程>>C++进阶与实例

基础入门:C++简介

    我们已看到用COM服务器组件对于建立一个基于网络的应用程序的重要性,但问题不在于是否建立它们,而在于用什么语言去创建。一种选择是用C++。
    人们对C++有许多不同的看法,保守的C++程序员坚持用其他语言创建COM组件,他们认为只有真正的程序员使用C++。另一方面,VB程序员认为C++是一种很难掌握和使用的语言,没有必要增加编程时间和进行艰难的尝试。Java程序员认为他们比C++程序员强,因为James Gosling(Java的发明者)吸收了许多语言(包括C++ )的优点发明了Java,本章和下一章的目的就是消除对C++的偏见和错误概念。
    本章集中介绍用C++ 建立服务器组件,不讲述C++语言,如果想学C++ ,请参阅Ivor.Horton著的《Beginning Visual C++6》,Wrox 出版,书号为ISBN 1-861000-88-X。
    本章的主要内容有:
    ? C++简史。
    ? 使用C++原因。
    ? 从VB移植到C++。
    ? ATL、STL和MFC介绍。
    ? 建立一个COM组件。
    ? 错误处理与调试。
    更重要的是应该记住,现在,不只是在用C++建立组件,可以使用Visual C++中可用的任何工具,使得建立过程更加容易。先从C++的起源谈起。
    17.1 C++语言
    在决定是否使用C++语言之前,最好是搞清楚这种语言的实质,让我们看一下C++的历史和现状。
    17.1.1 C++简史
    刚开始形成的是C语言,那些想建立更快更有效的代码的程序员非常欣赏C语言,有一位名叫Bjarne Stroustrup的人却不满足于仅仅是生产快速代码,他想创建面向对象的C语言编程。他开始对C语言的内核进行必要的修改,使其能满足面向对象模型的要求。C++从此产生。
    Bjarne Stroustrup是C++的最初设计者和实现者。它自诞生以来,经过开发和扩充已成一种完全成熟的编程语言。现在C++已由ANSI、BSI、DIN、其他几个国家标准机构和ISO定为标准。ISO标准于1997年11月4日经投票正式通过。
    C++标准演变了许多年。C++模板是近几年来对此语言的一种扩展,模板是根据类型参数来产生函数和类的机制,有时也称模板为“参数化的类型”。使用模板,可以设计一个对许多类型的数据进行操作的类,而不需要为每个类型的数据建立一个单独的类。标准模板库(Standard Tempalte Library,STL )和微软的活动模板库(Active Tempalte Library,ATL )都基于这个C++语言扩展。
    C++标准可分为两部分, C++语言本身和C++标准库。C++标准库对于Visual C++是相当新的,实际上微软只是在发布Visual C++ 5.0时去除了一些“bug”。标准库提供了标准的输入/输出、字符串、容器(如矢量、列表和映射等)、非数值运算(如排序、搜索和合并等)和对数值计算的支持。应该说, C/C++包含了相对少的关键字,而且很多最有用的函数都来源于库,C++标准库实现容器和算法的部分就是STL。

    STL是数据结构和算法的一个框架,数据结构包括矢量、列表和映射等,算法包括这些数据结构的查找、拷贝和排序等。1994年7月,ANSI/ISO C++标准委员会投票决定接受STL为C++标准库的一部分,这个建议是根据Alex Stepanov、Meng Lee和David Musser这三人的编程和软件库研究提出的。STL的产生是为了满足通用性的设计目标,而不是为了提高性能。

共3页 首页 上一页 1 2 3 下一页 尾页 跳转到
相关内容
赞助商链接