导读:
关于 C++ 的历史无须我来介绍了,有兴趣的可以用搜寻引擎来找出一堆谈 C++ 历史的, C++ 是个历久不衰的程式语言,功能强大但入门不易,后期有很多的程式语言致力于拥有 C++ 大部份的功能并去除其不易掌握的部份,即使后期的程式语言如此之多,但 C++ 仍在程式语言工具中占有一席之地。
这是我的 C++ 学习笔记第二个版本,主要的目的是 重新看看有没有什么语法或观念的错误,也藉此复习一下 C++ ,文件中所有的范例都是在 Dev C++4.9.9.2 中撰写测试。
入门基础
学习程式语言第一件事,通常就是先作个简单的程式来运行一下,并从了解程式语言的资料型态、变数与流程控制语法开始。
资料型态与变数
无论如何 先来个 "Hello! World!" 显示一下程式执行结果,增加一点撰写程式的信心!接着就耐心的了解一下 C++ 的资料型态,以认识一下变数、常数。
运算
程式的目的简单的说就是运算、运算还是运算,加减乘除这类的动作是少不得的,在 C++ 中提供运算功能的就是运算子( Operator )。
流程控制
流程控制语法是程式设计的基本,藉由各种条件判断与循环重复执行语法,您可以令您的程式因应不同的状况而作出不同的回应。
进阶型态
数组、字串、指针这几种 C++ 的进阶型态相当常被使用,虽然看似复杂,但彼此之间互有相关,另外这边也介绍一下 C++ 中的列举( Enumeration )型态。
数组( Array )
各种型态的数组各有其不同的用途,但无论如何,先从基本型态的一维数组、二维数组开始认识起。
向量( Vector )
C++ 提供了内建数组的替代型态 vector , vector 可以如同数组一般的操作,并记得自己的长度资讯,您也可以使用对象的方式来操作 vector 。
字串( String )
字串的本质是字元数组,而在 C++ 中还可以使用 string 类别来表现字串,两者都有了解的必要。
指针( Pointer )
指针可指向一个记忆体位址,可对对象作间接操作,指针拥有型态,这用来告诉编译器如何解释记忆体空间的内容,以及每一次运算的大小。
函数
程式中超过两次以上重复使用的程式码,可以考虑将之定义为函数,以便重复呼叫使用,降低相同程式片段的维护成本。
函数入门
先简介一些与函数定义相关的几个语法,并谈谈几个变数可视范围的议题。
进阶议题
递回呼叫、传值、传址、传参考等,这些议题在函数的使用上关乎执行资源的使用与效率问题。
对象基础
以对象为基础的程式设计,将程式中互动的单元视为一个个的对象。
封装( Encapsulation )
封装对象资讯是第一步,您要了解如何使用类别定义对象,像是定义对象的属性、行为等等,类别是建构对象时所依赖的规格书。
封装的进阶议题
一些有关于指针、运算子重载、特殊型态类别的相关议题。
对象导向
以对象为基础作延伸,多型( Polymorphism )操作为设计时的核心,于执行时期动态系结( Dynamic binding )以决定对象的行为。
继承( Inheritance )
您可以继承某个(父)类别的定义并加以扩充,而制订出一个新的(子)类别定义。
多型( Polymorphism )
多型操作在对象导向设计中伴演着极重要的角色,使用的适当与否,足以影响程式的架构与未来的可维护性。
例外处理( Exception Handling )
例外( Exception )是程式执行时期可侦测到的异常状况, C++ 的例外处理包括两部份:例外的丢出( throw )与例外的捕捉( catch )与处理。
范本( Template )、名称空间( Namespace )
范本( Template )提供被参数化的型态( Parameterized Types )功能,将型态相依与非型态相依的演算法分离开来;名称空间则提供一个名称管理容器,减低名称冲突的机会发生。
本文转自
http://www.violetblog.cn/clanguage/2007-7-2/C-HuaXiBiJi.html
关于 C++ 的历史无须我来介绍了,有兴趣的可以用搜寻引擎来找出一堆谈 C++ 历史的, C++ 是个历久不衰的程式语言,功能强大但入门不易,后期有很多的程式语言致力于拥有 C++ 大部份的功能并去除其不易掌握的部份,即使后期的程式语言如此之多,但 C++ 仍在程式语言工具中占有一席之地。
这是我的 C++ 学习笔记第二个版本,主要的目的是 重新看看有没有什么语法或观念的错误,也藉此复习一下 C++ ,文件中所有的范例都是在 Dev C++4.9.9.2 中撰写测试。
入门基础
学习程式语言第一件事,通常就是先作个简单的程式来运行一下,并从了解程式语言的资料型态、变数与流程控制语法开始。
资料型态与变数
无论如何 先来个 "Hello! World!" 显示一下程式执行结果,增加一点撰写程式的信心!接着就耐心的了解一下 C++ 的资料型态,以认识一下变数、常数。
运算
程式的目的简单的说就是运算、运算还是运算,加减乘除这类的动作是少不得的,在 C++ 中提供运算功能的就是运算子( Operator )。
流程控制
流程控制语法是程式设计的基本,藉由各种条件判断与循环重复执行语法,您可以令您的程式因应不同的状况而作出不同的回应。
进阶型态
数组、字串、指针这几种 C++ 的进阶型态相当常被使用,虽然看似复杂,但彼此之间互有相关,另外这边也介绍一下 C++ 中的列举( Enumeration )型态。
数组( Array )
各种型态的数组各有其不同的用途,但无论如何,先从基本型态的一维数组、二维数组开始认识起。
向量( Vector )
C++ 提供了内建数组的替代型态 vector , vector 可以如同数组一般的操作,并记得自己的长度资讯,您也可以使用对象的方式来操作 vector 。
字串( String )
字串的本质是字元数组,而在 C++ 中还可以使用 string 类别来表现字串,两者都有了解的必要。
指针( Pointer )
指针可指向一个记忆体位址,可对对象作间接操作,指针拥有型态,这用来告诉编译器如何解释记忆体空间的内容,以及每一次运算的大小。
函数
程式中超过两次以上重复使用的程式码,可以考虑将之定义为函数,以便重复呼叫使用,降低相同程式片段的维护成本。
函数入门
先简介一些与函数定义相关的几个语法,并谈谈几个变数可视范围的议题。
进阶议题
递回呼叫、传值、传址、传参考等,这些议题在函数的使用上关乎执行资源的使用与效率问题。
对象基础
以对象为基础的程式设计,将程式中互动的单元视为一个个的对象。
封装( Encapsulation )
封装对象资讯是第一步,您要了解如何使用类别定义对象,像是定义对象的属性、行为等等,类别是建构对象时所依赖的规格书。
封装的进阶议题
一些有关于指针、运算子重载、特殊型态类别的相关议题。
对象导向
以对象为基础作延伸,多型( Polymorphism )操作为设计时的核心,于执行时期动态系结( Dynamic binding )以决定对象的行为。
继承( Inheritance )
您可以继承某个(父)类别的定义并加以扩充,而制订出一个新的(子)类别定义。
多型( Polymorphism )
多型操作在对象导向设计中伴演着极重要的角色,使用的适当与否,足以影响程式的架构与未来的可维护性。
例外处理( Exception Handling )
例外( Exception )是程式执行时期可侦测到的异常状况, C++ 的例外处理包括两部份:例外的丢出( throw )与例外的捕捉( catch )与处理。
范本( Template )、名称空间( Namespace )
范本( Template )提供被参数化的型态( Parameterized Types )功能,将型态相依与非型态相依的演算法分离开来;名称空间则提供一个名称管理容器,减低名称冲突的机会发生。
本文转自
http://www.violetblog.cn/clanguage/2007-7-2/C-HuaXiBiJi.html