第1讲面向对象的程序设计的特点
- 格式:pdf
- 大小:456.43 KB
- 文档页数:37
面向对象的三个基本特征(讲解)面向对象的三个基本特征是:封装、继承、多态。
封装封装最好理解了。
封装是面向对象的特征之一,是对象和类概念的主要特性。
封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。
继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。
继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。
通过继承创建的新类称为“子类”或“派生类”。
被继承的类称为“基类”、“父类”或“超类”。
继承的过程,就是从一般到特殊的过程。
要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。
在某些 OOP 语言中,一个子类可以继承多个基类。
但是一般情况下,一个子类只能有一个基类,要实现多重继承,可以通过多级继承来实现。
继承概念的实现方式有三类:实现继承、接口继承和可视继承。
实现继承是指使用基类的属性和方法而无需额外编码的能力;接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力;可视继承是指子窗体(类)使用基窗体(类)的外观和实现代码的能力。
在考虑使用继承时,有一点需要注意,那就是两个类之间的关系应该是“属于”关系。
例如,Employee 是一个人,Manager 也是一个人,因此这两个类都可以继承 Person 类。
但是 Leg 类却不能继承 Person 类,因为腿并不是一个人。
抽象类仅定义将由子类创建的一般属性和方法,创建抽象类时,请使用关键字 Interface 而不是 Class。
OO开发范式大致为:划分对象→抽象类→将类组织成为层次化结构(继承和合成) →用类与实例进行设计和实现几个阶段。
多态多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。
C++面向对象程序设计教程课后题答案1.1?? 什么是面向对象程序设计面向对象程序设计是一种新的程序设计范型.这种范型的主要特征是:程序=对象+消息面向对象程序的基本元素是对象。
主要结构特点是:第一,?? 程序一般由类的定义和类的使用两部分组成;第二,?? 程序中的一切操作都是通过向对象发送消息来实现的。
1.2?? 什么是对象什么是类对象与类之间的关系是什么对象是描述其属性的数据以及对这些数据施加的一组操作封装在一起构成的统一体。
类就是具有相同的数据和相同的操作的一组对象的集合,也就是说,类是对具有相同数据结构和相同操作的一类对象的描述。
类和对象之间的关系是抽象和具体的关系。
类是多个对象进行综合抽象的结果,一个对象是类的一个实例。
1.3?? 现实世界中的对象有哪些特征?请举例说明。
现实世界中的对象具有以下特征:1)???????? 每一个对象必须有一个名字以区别于其他对象;2)???????? 用属性来描述对象的某些特征;3)???????? 有一组操作,每组操作决定对象的一种行为;4)???????? 对象的行为可以分为两类:一类是作用于自身的行为,另一类是作用于其他对象的行为。
例如一个教师是一个对象。
每个教师对象有自己的名字来和别的教师区别。
教师具有编号,姓名,年龄,职称,专业等属性。
教师拥有走路,吃饭,授课等行为操作。
走路,吃饭是作用于自身的行为,授课是作用于其他对象的行为。
1.4?? 什么是消息?消息具有什么性质?一个对象向另一个对象发出的请求成为“消息”。
消息具有以下3个性质:1)???????? 同一个对象可以接收不同形式的多个消息,做出不同的相应;2)???????? 相同形式的消息可以传递给不同的对象,所做出的响应可以是不同的;3)???????? 对消息的响应并不是必须的,对象可以响应消息,也可以不响应。
1.5?? 什么是抽象和封装?请举例说明。
抽象是将有关事物的共性归纳、集中的过程。
Object- Oriented ProgrammingC++主讲成长生东华大学计算机科学与技术学院第一章概述§1.1 面向对象程序设计的基本思想C++是基于C语言发展的, 又冲破C语言局限的面向对象的程序设计语言。
它与Java语言都作为当前计算机科学的主流语言, 越来越受到用户的欢迎。
要弄清楚什么是面向对象的程序设计, 首先了解和回顾传统的( Pascal( 或C) ) 结构化程序设计方法及其设计思想、程序结构及特点。
SP(Structure Programming)是60年代诞生的针对当时爆发的所谓”软件危机”, 为此发展形成了现代软件工程学的基础。
SP的总的设计思想是:.自顶向下、层次化.逐步求精、精细化程序结构是按功能划分基本模块的树型结构, 使模块间的关系尽可能简单独立。
因此SP的程序的基本特点是:.按层次组织模块( 战略上划分战役).每一模块只有一个入口, 一个出口.代码和数据分离( 程序=数据结构+算法)归纳得到: SP把数据和过程( 代码、函数) 分离为相互独立的实体, 用数据代表问题空间中的客体借以表示实际问题中的信息; 程序代码则用来处理加工这些数据。
程序员在编程时, 必须时刻考虑所要处理的数据结构和类型。
对不同的数据格式即使要作同样的处理计算, 或者要对相同的数据格式作不同的处理都必须编写不同的程序( 如两个整型数和两个浮点数相加) 。
这样的编程方法, 即传统的SP方法设计出来的程序或系统其可重用的成分很少。
其次把数据和代码作为不同的分离实体时, 总存在着用错误的数据调用正确的程序模块, 或用正确的数据调用错误的程序模块的危险, 从而使数据与程序始终保持兼容, 已成为程序员的一个沉重的负担。
在开发一个大型软件课题中, 当工程进入到后期若用户改变了方案要求, 很容易使技术人员的前期工作受到摧毁性的打击, 使其前功尽弃。
为克服以上的弊端或者该SP方法难以控制处理的矛盾而产生了面向对象程序设计方法, 即Object -Oriented Programming――OOP。
面向对象程序设计课程描述一、课程概述面向对象程序设计是计算机科学中的一个重要分支,它是一种编程范式,通过把数据和操作封装在对象中,实现程序的模块化和复用。
本课程旨在帮助学生掌握面向对象程序设计的基本概念、原则和技术,并能够运用所学知识设计、实现和维护高质量的面向对象程序。
二、课程内容1. 面向对象基础介绍面向对象编程的基本概念,包括类、对象、继承、多态等。
讲解如何使用类定义数据类型,并通过封装、继承和多态等机制来实现代码复用和灵活性。
2. 面向对象设计原则介绍常见的面向对象设计原则,包括单一职责原则、开放封闭原则、里氏替换原则等。
讲解如何根据这些原则进行系统架构设计和代码编写。
3. 面向对象分析与设计介绍面向对象分析与设计方法,包括UML建模语言和常用建模工具。
讲解如何使用UML图形化表示系统需求和结构,并通过UML类图来描述系统组成部分及其相互关系。
4. 面向对象编程语言介绍面向对象编程语言的特点和常见语言的使用,包括Java、C++、Python等。
讲解如何使用这些语言实现面向对象程序设计,并介绍常用的开发工具和框架。
5. 面向对象设计模式介绍常见的面向对象设计模式,包括工厂模式、单例模式、观察者模式等。
讲解如何根据不同场景选择合适的设计模式,并通过实例演示如何应用。
三、教学方法1. 理论讲授老师将通过课堂讲解和PPT展示,系统全面地介绍课程内容和案例分析,帮助学生理解相关概念和原理。
2. 实践操作课程中将安排一定量的编程实践环节,帮助学生巩固所学知识并提高编程能力。
实践环节将涉及到面向对象程序设计的各个方面,包括类定义、封装、继承、多态等。
3. 课程项目本课程将安排一个小型项目作为期末考核,要求学生运用所学知识完成一个具有一定规模和复杂度的面向对象程序,并在最后一次课堂上进行演示和评分。
四、评分方式1. 平时成绩包括课堂出勤、作业完成情况、实验报告等,占总成绩的30%。
2. 期中考试考察学生对课程内容的掌握程度,占总成绩的30%。
第一章Visual-Basic-6.0概述VBasic 6.0基础教程第一章Visual Basic 6.0的特点Visual Basic是Microsoft公司推出的一个集成开发环境,具有简单易学、功能强大、软件费用支出低、见效快等特点。
Visual Basic继承了Basic语言易学易用的特点,特别适合初学者学习Windows系统编程。
Visual Basic之所以受到广大编程爱好者以及专业程序员的青睐,是因为它具有以下一些特点:1.可视化的集成开发环境"Visual"指的是开发图形用户界面(GUI)的方法。
在使用过去的一些语言如C语言、Basic 语言编写程序时,最令程序员烦恼的是编写友好的用户界面。
使用Visual Basic编写应用程序,则不需编写大量代码去描述界面元素的外观和位置,而只要把预先建立的对象添加到屏幕上即可。
"Basic"指的是BASIC(Beanner'sAll-Purpose Symbolic Instruction Code)语言--一种在计算技术发展历史上应用得最为广泛的语言。
Visual Basic在原有BASIC语言的基础上进一步发展,至今己包含了数百条语句、函数及关键词,其中很多和Windows GUI有直接关系。
专业人员可以用Visual Basis实现其它任何Windows编程语言的功能,而初学者只要掌握几个关键词就可以建立实用的应用程序。
可见,从BASIC语言发展到Visual Basic,也就是将一们单纯的计算机语言发展成为一个集应用程序开发、测试、查错功能于一体的集成开发环境。
2.面向对象的程序设计思想面向对象的程序设计是伴随Windows图形界面的诞生而产生的一种新的程序设计思想,与传统程序设计有着较大的区别,Visual Basle就采用了面向对象的程序设计思想。
所谓"对象"就是一个可操作的实体,如窗体,以及窗体中的按钮、文木框等控件。
程序设计根底局部知识点总结知识点一程序设计的方式与风格<一>程序设计(Programming)是指利用运算机解决问题的全进程,它包括多方面的内容,而编写程序只是其中的一局部。
就程序设计方式和技术开展而言,要紧经历了构造化程序设计和面向对象的程序设计时期。
<二>程序设计的一样步骤<三>程序设计方式与风格程序设计方式是指关于以什么观点来研究问题并进展求解,和如何进展系统设计的软件方式学。
程序设计风格是指编写程序时所表现出的特点、适应和逻辑思路。
从整体上说,程序设计风格强调简单和清楚。
“清楚第一,效率第二〞的观点是现今主导的程序设计风格。
<四>良好程序设计风格注重因素1〕源程序文档化2〕数听说明的方式3〕语言的构造4〕输入和输出知识点二构造换程序设计<一>构造化程序设计:为使程序具有一个合理的构造以保证程序正确性而规定的一套如何进展程序设计的原那么。
<二>原那么:1〕采纳自顶向下、慢慢求精的方式2〕程序构造模块化,每一个模块只有一个入口和一个出口;3〕利用三种全然操纵构造描述程序流程,限制利用goto语句;注释:所谓模块化确实是把一个大型的程序依照功能分解为假设干相对独立的、较小的子程序(即模块),并把这些模块按层次关系进展组织。
<三>全然构造1)顺序构造2)选择构造3) 循环〔重复〕构造<四>构造化程序设计的优势:1)程序构造良好;2)程序清楚易读、利用和保护;3)提高编程的效率,降低开发本钱构造化程序设计的缺点:1)数据与对数据的操作(函数)相别离;2)可重用性差知识点三 面向对象的程序设计面向对象方式和技术以对象为核心〈一〉概念1)对象:具有属性〔数据〕和方式(行为方式)的实体。
在现实生活中,所有东西都是对象。
任何对象都有两个一起的特点:对象的属性和对象的操作。
一个对象通常由对象名、属性和操作组成。
对象特点:标识唯一性、分类性、多态性、封装性、模块独立性好注:对象的属性〔静态属性〕对象的操作〔动态属性〕2)属性:用来描述对象的状态,对象的状态又称为对象的静态属性,包括对象内部所包括的信息,每一个对象都具有自己专有的内部信息,这些信息说明了对象所处的状态。
面向对象程序设计万物皆对象冯君,李永,李群,薛红芳编1面向对象的特性-封装性学习目标:1.理解封装的概念2.掌握private 关键字3.掌握构造方法4.掌握方法重载 重点与难点:封装性的理解,构造方法的使用,方法重载的定义✍理解为什么需要封装封装的定义1.封装,就是隐藏实现细节2.将属性私有化,提供公有方法访问私有属性3.通过这些公有方法访问私有属性,这样做的好处是防止外界直接对属性进行不合理的更改。
✪理解为什么需要构造方法构造方法的定义:构造方法负责对象成员的初始化工作,为实例变量赋予合适的初始值。
构造方法必须满足以下语法规则:1、方法名与类名相同2、没有返回类型构造方法的调用:创建对象时自动调用。
这好比是人刚出生父母就给他起好了名字。
带参构造方法:通过调用带参数的构造方法,简化对象初始化的代码。
特殊的this:this 表示当前对象,为了区分成员变量和参数,如果不同名,可以不加this 。
✍方法重载的定义:1.方法名相同。
2.方法的参数类型、个数、顺序至少有一项不相同。
3.方法的返回类型可以不相同。
4.方法的修饰符可以不相同。
思考:构造方法可以重载吗?(可以)public class Teacher{private String name; // 姓名// 返回姓名public String getName() {return name;}// 设定姓名public void setName(String name) { = name;}}public class Teacher {private String name; //姓名// 构造方法public Teacher() {name = "张三";}}//存在问题,每个教师在new 出来时的名字都一样,最简单的解决办法——带参构造方法public Teacher(String name){=name;}Math.max(1,2);Math.max(1.0F,2.0F);Math.max(1.0,2);运行时,Java 虚拟机先判断给定参数的类型,然后决定到底执行哪个max()方法☺使用private关键字修饰某个成员变量后,这个成员变量可以被同一包中的其它类访问吗?☺在Java程序中,代码封装带给我们的好处是什么?☺请通过代码封装,实现如下需求:编写一个类Book,代表教材:具有属性:名称(title)、页数(pageNum),其中页数不能少于200页,否则输出错误信息,并赋予默认值200为各属性设置赋值和取值方法具有方法:detail,用来在控制台输出每本教材的名称和页数编写测试类BookTest进行测试:为Book对象的属性赋予初始值,并调用Book对象的detail方法,看看输出是否正确☺编写一个类Book2,代表教材:具有属性:名称(title)、页数(pageNum),其中页数不能少于200页,否则输出错误信息,并赋予默认值200具有方法:Sdetail,用来在控制台输出每本教材的名称和页数具有带参数的构造方法:用来完成对象的初始化工作,并在构造方法中完成对页数的最小值限制编写测试类Book2Test进行测试:初始化一个Book2对象,并调用该Book2对象的detail方法,看看输出是否正确☺编写一个类Book3,代表教材:具有属性:名称(title)、页数(pageNum)、类型(type)具有方法:detail,用来在控制台输出每本教材的名称、页数、类型具有两个带参构造方法:第一个构造方法中,设置教材类型为“计算机”(固定),其余属性的值由参数给定;第二个构造方法中,所有属性的值都由参数给定编写测试类Book3Test进行测试:分别以两种方式完成对两个Book3对象的初始化工作,并分别调用它们的detail方法,看看输出是否正确改进上学期所编写的宠物猫程序:运用封装、构造方法及构造方法的重载编写一个宠物猫类,能吃,能喝,能睡,能运动,能捉老鼠。
Java面向对象详解前言:接触项目开发也有很长一段时间了,最近开始萌发出想回过头来写写以前学过的基础知识的想法。
一是原来刚开始学习接触编程,一个人跌跌撞撞摸索着往前走,初学的时候很多东西理解的也懵懵懂懂,后来实践的多了,有些东西才慢慢清楚;二是经过一定的实践之后,反过头来再去学习一些基础东西才能够理解的更透彻;三是有些东西基础但是确很重要,是值得好好搞一搞的。
1、面向对象面向对象(Object Oriented)是一种新兴的程序设计方法,或者是一种新的程序设计规范(paradigm),其基本思想是使用对象、类、继承、封装、多态等基本概念来进行程序设计。
从现实世界中客观存在的事物(即对象)出发来构造软件系统,并且在系统构造中尽可能运用人类的自然思维方式。
2、对象对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。
一个对象由一组属性和对这组属性进行操作的一组服务组成。
类的实例化可生成对象,一个对象的生命周期包括三个阶段:生成、使用、消除。
当不存在对一个对象的引用时,该对象成为一个无用对象。
Java的垃圾收集器自动扫描对象的动态内存区,把没有引用的对象作为垃圾收集起来并释放。
当系统内存用尽或调用System.gc( )要求垃圾回收时,垃圾回收线程与系统同步运行。
3、类类是具有相同属性和方法的一组对象的集合,它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和方法两个主要部分。
在面向对象的编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性和方法两个主要部分。
Java中的类实现包括两个部分:类声明和类体。
类声明[public][abstract|final] class className [extends superclassName] [implementsinterfaceNameList]{……}其中,修饰符public,abstract,final 说明了类的属性,className为类名,superclassName为类的父类的名字,interfaceNameList为类所实现的接口列表。
C++语言程序设计课后答案(郑莉第版)(总48页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--第一章概述1-1 简述计算机程序设计语言的发展历程。
解:迄今为止计算机程序设计语言的发展经历了机器语言、汇编语言、高级语言等阶段,C++语言是一种面向对象的编程语言,也属于高级语言。
1-2 面向对象的编程语言有哪些特点解:面向对象的编程语言与以往各种编程语言有根本的不同,它设计的出发点就是为了能更直接的描述客观世界中存在的事物以及它们之间的关系。
面向对象的编程语言将客观事物看作具有属性和行为的对象,通过抽象找出同一类对象的共同属性(静态特征)和行为(动态特征),形成类。
通过类的继承与多态可以很方便地实现代码重用,大大缩短了软件开发周期,并使得软件风格统一。
因此,面向对象的编程语言使程序能够比较直接地反问题域的本来面目,软件开发人员能够利用人类认识事物所采用的一般思维方法来进行软件开发。
C++语言是目前应用最广的面向对象的编程语言。
1-3 什么是结构化程序设计方法这种方法有哪些优点和缺点解:结构化程序设计的思路是:自顶向下、逐步求精;其程序结构是按功能划分为若干个基本模块;各模块之间的关系尽可能简单,在功能上相对独立;每一模块内部均是由顺序、选择和循环三种基本结构组成;其模块化实现的具体方法是使用子程序。
结构化程序设计由于采用了模块分解与功能抽象,自顶向下、分而治之的方法,从而有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。
虽然结构化程序设计方法具有很多的优点,但它仍是一种面向过程的程序设计方法,它把数据和处理数据的过程分离为相互独立的实体。
当数据结构改变时,所有相关的处理过程都要进行相应的修改,每一种相对于老问题的新方法都要带来额外的开销,程序的可重用性差。
由于图形用户界面的应用,程序运行由顺序运行演变为事件驱动,使得软件使用起来越来越方便,但开发起来却越来越困难,对这种软件的功能很难用过程来描述和实现,使用面向过程的方法来开发和维护都将非常困难。
鸡啄米的这套C++编程入门教程到上一讲--C++编程入门系列之五十(异常处理)为止,就算圆满完成了。
大家学到这里应该对C++的基础知识和程序设计都有了一定的认识了,以后要做的就是多练习多积累经验了。
一.目录之前鸡啄米都是一节一节的讲,也没有明确给出本套教程的组织结构,大家只能一节一节的跟着学。
此教程共有五十二讲:前言、五十讲入门知识和这一节的总结。
下面鸡啄米就概括出这套C++编程入门教程的目录:第一部分:C++编程概述鸡啄米:C++编程入门系列之前言鸡啄米:C++编程入门系列之一(进制数)鸡啄米:C++编程入门系列之二(原码、反码与补码)第二部分:C++简单程序设计鸡啄米:C++编程入门系列之三(VS2010的使用介绍)鸡啄米:C++编程入门系列之四(数据类型)鸡啄米:C++编程入门系列之五(运算符和表达式)鸡啄米:C++编程入门系列之六(算法的基本控制结构之选择结构)鸡啄米:C++编程入门系列之七(算法的基本控制结构之循环结构)鸡啄米:C++编程入门系列之八(自定义数据类型)第三部分:函数鸡啄米:C++编程入门系列之九(函数的定义与调用)鸡啄米:C++编程入门系列之十(函数的参数传递与内联函数)鸡啄米:C++编程入门系列之十一(重载函数与函数模板)第四部分:类与对象鸡啄米:C++编程入门系列之十二(类与对象:面向对象设计的基本思想和特点)鸡啄米:C++编程入门系列之十三(类与对象:类的声明、成员的访问控制和对象)鸡啄米:C++编程入门系列之十四(类与对象:构造函数和析构函数)鸡啄米:C++编程入门系列之十五(类与对象:类的组合)鸡啄米:C++编程入门系列之十六(类与对象:类模板)鸡啄米:C++编程入门系列之十七(类与对象:UML简介)第五部分:C++程序设计必知鸡啄米:C++编程入门系列之十八(C++程序设计必知:作用域和可见性)鸡啄米:C++编程入门系列之十九(C++程序设计必知:生存期)鸡啄米:C++编程入门系列之二十(C++程序设计必知:数据和函数)鸡啄米:C++编程入门系列之二十一(C++程序设计必知:类的静态成员)鸡啄米:C++编程入门系列之二十二(C++程序设计必知:友元)鸡啄米:C++编程入门系列之二十三(C++程序设计必知:常引用、常对象和对象的常成员)鸡啄米:C++编程入门系列之二十四(C++程序设计必知:多文件结构和编译预处理命令)第六部分:数组、指针和字符串鸡啄米:C++编程入门系列之二十五(数组、指针和字符串:数组的声明和使用)鸡啄米:C++编程入门系列之二十六(数组、指针和字符串:数组的存储与初始化、对象数组、数组作为函数参数)鸡啄米:C++编程入门系列之二十七(数组、指针和字符串:指针变量的声明、地址相关运算--“*”和“&”)鸡啄米:C++编程入门系列之二十八(数组、指针和字符串:指针的赋值和指针运算)鸡啄米:C++编程入门系列之二十九(数组、指针和字符串:指向数组元素的指针和指针数组)鸡啄米:C++编程入门系列之三十(数组、指针和字符串:指针用作函数参数、指针型函数和函数指针)鸡啄米:C++编程入门系列之三十一(数组、指针和字符串:对象指针)鸡啄米:C++编程入门系列之三十二(数组、指针和字符串:动态内存分配和释放)鸡啄米:C++编程入门系列之三十三(数组、指针和字符串:用字符数组存放和处理字符串)鸡啄米:C++编程入门系列之三十四(数组、指针和字符串:string类)第七部分:继承与派生鸡啄米:C++编程入门系列之三十五(继承与派生:概念介绍与派生类的声明)鸡啄米:C++编程入门系列之三十六(继承与派生:派生类从基类继承的过程)鸡啄米:C++编程入门系列之三十七(继承与派生:派生类对基类成员的访问控制之公有继承)鸡啄米:C++编程入门系列之三十八(继承与派生:派生类对基类成员的访问控制之保护继承与私有继承)鸡啄米:C++编程入门系列之三十九(继承与派生:派生类的构造函数)鸡啄米:C++编程入门系列之四十(继承与派生:派生类的析构函数)鸡啄米:C++编程入门系列之四十一(继承与派生:作用域分辨符)鸡啄米:C++编程入门系列之四十二(继承与派生:虚基类及其派生类的构造函数)鸡啄米:C++编程入门系列之四十三(继承与派生:赋值兼容规则)第八部分:多态性鸡啄米:C++编程入门系列之四十四(多态性:多态的概念和类型)鸡啄米:C++编程入门系列之四十五(多态性:运算符重载的概念和规则)鸡啄米:C++编程入门系列之四十六(多态性:运算符重载为类的成员函数)鸡啄米:C++编程入门系列之四十七(多态性:运算符重载为类的友元函数)鸡啄米:C++编程入门系列之四十八(多态性:虚函数)鸡啄米:C++编程入门系列之四十九(多态性:纯虚函数和抽象类)第九部分:异常处理鸡啄米:C++编程入门系列之五十(异常处理)二.总结平时写程序总会用到C++语言的各种基础知识,但从来没有这样根据以前自己的学习,将C++语法知识和编程方法及思想等总结之后写下来。