没有合适的资源?快使用搜索试试~ 我知道了~
鸡啄米:C++编程入门系列教程
5星 · 超过95%的资源 需积分: 0 88 下载量 132 浏览量
2016-08-26
19:42:59
上传
评论
收藏 382KB DOCX 举报
温馨提示
试读
64页
鸡啄米:C++编程入门系列教程word整理版,其中标记了我在学习过程中遇到的一些重难点问题。鸡啄米出品,精品质量保证,拿来与大家分享。
资源推荐
资源详情
资源评论
鸡啄米的这套 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++语法知识和编程方法及思想等总结之后写下来。
在工作之余写下这套教程,不但让我自己对 C++基础知识掌握的更牢固,对 C++编程
思想有了更深入的认识,而且更重要的是能与很多想步入 C++编程殿堂的朋友分享这些知
识。
大家学完这套教程以后可能还是感觉不太自信,认为自己还是写不了程序。没关系,
看看别人写的程序,可以是稍微复杂点的,自己稍加修改再测试运行看看效果,经过这样
的练习以后就可以自己试着设计并编写程序了。谁都是这时候过来的,要有耐心和勇于尝
试。
记住,学 C++就是在练内功,练好了内功再就是招式上的学习和熟悉了。学好了 C+
+,可以做 VC 界面开发,也可以做 Linux 下的嵌入式开发,又或者是网络方面等等,但
C++是基础(当然也不是只能用 C++语言进行这些开发)。
建议大家可以再学学 MFC(微软基础类库),做一些简单的界面,这样能清楚的看到
C++能够实现的功能,增加自己的成就感,还能学习微软的代码风格和设计方式。
完成了此套 C++编程入门教程以后,鸡啄米认为还有很多知识有必要跟大家分享,有
时间我还会为大家带来 MFC、网络编程、数据库等方面的入门知识。希望大家继续关注鸡
啄米博客,继续支持鸡啄米,谢谢大家!
第一部分:C++编程概述
鸡啄米:C++编程入门系列之前言
从今天开始鸡啄米将给大家讲解一些 C++编程入门的知识,对于鸡啄米也是个温习巩固的
过程。鸡啄米将会用深入浅出的方式,尽量用最简单的语言让读者学会 C++语言,并爱上
这门语言。
本前言讲述的是编程语言的发展过程、面向对象方法、面向对象的基本概念等内容。
语言大家都知道,计算机语言跟人类语言一样有语法等规则,它是计算机可以识别的
语言,用来描述解决问题的方法,计算机阅读了它就可以做相应的工作。利用语言描述解
决问题的方法就生成了程序,程序是由很多指令组成的,计算机所能识别的指令是 0 和 1
的组合,所有这种指令组成的语言叫做机器语言。可以想象,全是 1 和 0,对于软件开发
者来说编程是很难的,开发周期长,功能也做不复杂。后来出现了汇编语言,它就是把机
器语言映射成一些人能读懂的助记符,这样就使得软件开发容易点了,但是还是与人的思
维差别很大,但这是一个跳跃式的进步。最后出现了高级语言,抽象层次比较高了,程序
中的数据命名都能很容易看出数据的含义,而且执行语句也很容易理解。 20 世纪 60 年代
出现的结构化编程语言更是进了一大步,但是程序中的数据和操作分离,各自独立,不能
跟现实中的事物对应起来。最后出现了面向对象编程语言。
面向对象编程语言把事物看成是具有属性和行为的对象,然后通过抽象找出属于同一
类的事物的属性和行为,就形成了类。通过类的继承和多态可以很好的实现代码复用,提
高软件开发效率。如果这块不懂的话可以先尽量理解,通过后面的学习会慢慢理解这些概
念。
20 世纪 80 年代比较风行结构化程序设计方法,它的设计思路是,自上而下,逐步细
化,将程序结构按功能分成多个模块,每个模块可能又会分成多个模块,这样就形成了一
个模块的树状结构,各个模块间的关系尽可能简单,功能上相对独立。每个模块都是由顺
序、选择和循环三种基本结构组成。这种方法就将一个复杂的程序设计问题分成很多简单
细化的子问题,更便于开发维护。但是这种方法的缺点是数据和处理数据的方法各自独立,
如果数据结构改变,所有相关的方法都要改变。这时就出现了面向对象设计方法,它将数
据和方法放到一个整体里,这个整体就叫对象,同类型对象抽象成类,类中大部分数据只
能用本类中的方法处理,类通过简单的外部接口与外界发生关系,而内部的各种关系对外
部是透明的。
下面介绍面向对象的几个基本概念:
1.对象。每个对象都是描述客观存在事物的一个实体,都是由数据和方法(也可以叫
属性和行为)构成。属性是描述事物特征的数据,行为描述对对象属性的一些操作。
2.类。类是具有相同属性和行为的一些对象的集合,它为所有属于这个类的对象提供
抽象的描述,比如麻雀和杜鹃都可以看作是对象,而鸟就可以看作类。
3.封装。封装就是把对象的所有属性和行为结合成一个独立的单位,对外隐藏对象的
内部细节,只保留有几个接口与外界联系。
4.继承。一个类(叫做子类)可以通过继承另一个类(叫做父类)来拥有另一个类的
所有属性和行为。比如车和汽车,汽车从车继承,车的所有属性和行为都继承到了汽车上。
5.多态性。多态性就是说父类中的属性和行为被子类继承后,子类可以有自己不同于
父类的属性或行为。比如定义一个类“动物”,它具有“吃”这个行为,但是具体怎么吃吃什么,
不知道,因为不知道到底是个什么“动物”,如果从这个类继承出子类“羊”和“老虎”,“吃”就
成了具体的行为,怎么吃吃什么就都知道了。
最后鸡啄米再次声明,本前言内容可能对于新手来说讲的还是有点难懂,但是不要担
心,通过后续的学习肯定会慢慢领会这些的,到那时你再回来看这些就会觉得很简单了。
鸡啄米:C++编程入门系列之一(进制数)
鸡啄米在前言已经讲了程序的发展历程,程序设计的进步和编程入门的一些基本概念。这
一节主要讲数据在计算机中的存储结构。计算机执行程序需要控制信息和数据信息,控制
信息涉及硬件方面,鸡啄米主要讲数据信息的存储。这部分内容可能有点郁闷,但是这是
基础之基础,在编程入门时还是掌握下吧。
大家应该知道比较常用的数制是十进制、二进制、八进制和十六进制。二进制就是逢
二进一,每位都是小于二的数,其他进制类推。计算机存储数据使用的是二进制编码。
对于一个 R 进制的数 X 来说,其值可以通过下面的公式算出来:
,前面是整数部分,后面是小数部分,m,n 为正整数,表
示第 i 位上的数字乘以进制数的 i 次方。比如二进制数(11.01)
2
=1×2
1
+1×2
0
+0×2
-1
+1×2
-
2
=3.25 。当 R 进制转换到十进制时,就这样转换。
那十进制怎么转换为 R 进制呢,可以将十进制数连续除以 R,其每个余数就是 R 进制
数各个数位上的数字,最后的余数是最高位。比如将 68 转换成二进制数,用除 2 取余法:
2∟68 余数
2∟34 …………………0低位
2∟17 …………………0
2∟8…………………1
2∟4 …………………0
2∟2 …………………0
2∟1 …………………0
0 …………………1高位
结果就是 68
10
=1000100
2
,将 68 转换为八进制数就用除 8 取余法。
十进制小数转换成 R 进制小数,整数部分仍按上述方法转换,小数部分则乘以 R,然
后将结果的整数位取出作为转换最终结果的一位,再用去掉整数位的小数再乘以 R,之后
循环这样执行,直到小数部分为 0 或者达到所要求的精度为止,取出的这些整数位第一位
为最高位。例如,将十进制小数 0.3125 转换成二进制小数:
0.3125×2 = 0.625取出 0,为最高位
0.625×2 = 1.25取出 1,剩下的小数为 0.25
0.25×2 = 0.5取出 0
0.5×2 = 1.0取出 1,小数位为 0,不再继续
结果就是 0.3125
10
=0.0101
2
。所以将十进制数 68.3125 转换成二进制数就是
1000100.0101。
二进制和八进制十六进制之间怎样转换呢?每位八进制数相当于三位二进制数,每位
十六进制数相当于四位二进制数,举个例子说明下就清楚了:
(1000100)
2
=(1 000 100)
2
=(104)
8
(1000100)
2
=(100 0100)
2
=(44)
16
上面这个等式反过来当然也成立,就是八进制十六进制转换为二进制反过来计算就可
以了。
下面鸡啄米再跟大家说下计算机数据的存储单位,常用的单位有“位”,“字节”,“字”。
位 bit:这是数据的最小单位,表示一位二进制数据。
字节 byte:由八位二进制数据组成。字节是数据存储中最常用的基本单位。我们常说
内存有 2G,这里的单位就是字节。1K 等于 1024 字节,1M 等于 1024K,1G 等于
1024M。
剩余63页未读,继续阅读
资源评论
- mofeng23322023-12-30感谢作者上传这么有用的C++教程,让我受益匪浅。
- bin-zhou2016-09-21是doc的文件,可以直接转成pdf米克米不克2016-11-18直接在word里加批注挺方便的啊
米克米不克
- 粉丝: 8
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功