<文章原创,转载请说明出处,联系信箱623730587@qq.com>
一、开题
今天和一个女生聊天,那种我说什么都好像知道的女孩,我好几次讲话都被她给打断了,于是我决定调戏她一下,我对她说“有一个问题你肯定不知道”,她问我什么问题,我故意说“唉,还是算了,我不好意思说。“,她更加好奇的问是什么?我看了她老半天说”你知道男生是怎么骑自行车的吗?“,这女生害羞的说”不知道“。然后陷入沉思,估计是去想什么了...,估计是面向过程去了,也许是面向对象去了?好了,停止思维的野马,进入今天的学习。
二、提前灌输概念(当然了,现在不必知道到底是什么意思,这要经过一段时间的学习才能领悟到)
1什么是面向对象?什么又是面向过程?啊,这个问题我估计大家都听过无数次了,但是实在是太抽象了,如果没有深切的编写过c语言代码和c++代码,那是不可能领会的。估计大家又晕了,好了,我给大家带来江中牌六位地黄丸,专门解决这个问题!所以先看看下面的一段老师和学生的对话!
老师:一切皆对象。
学生:(这部废话么),到底什么是对象?
老师:张三是个人(对象),李四也是个人(对象),张三和李四都属于人类(类),换句话说,具体的事物就是对象,将这些具体对象的共同特征和行为抽象出来就是类,这就是对象与类的概念。
学生:哦,原来是这么回事啊,我好像明白点什么了。那什么是面向对象的编程呢?
老师:面向对象就是以类的方式分析和组织代码。
学生:那什么又是面向过程呢?
老师:所谓的面向过程就是,分析出解决问题的步骤,然后把这些步骤一步一步的用代码实现。
学生:我好像明白怎么回事了。
2 如果不明白老师的话是什么意思,那么没关系,要想吃豆腐,还得慢慢来,这需要经过一段时间的c与c++的编程才能逐渐领悟,以后在写c++代码的时候,你会逐步看到,写c语言代码,主函数上面是一大堆函数,而写c++代码,主函数上面写了一大堆类,类里面包含了类的特征信息(年龄等,用成员变量描述),和行为(用成员函数描述);c语言代码需要解决一个问题,就写一个函数,这就是面向过程。c++代码需要解决一个问题,就写一个类,以类的方式组织代码,这就是面向对象。
3 好了废话不多说,先写一个类。如果我们要统计测绘工程专业的同学的信息,用c++代码怎么实现?我们先来分析分析这个问题:1 我们统计的对象是一个个具体的学生(对象)2 统计完成之后,我们需要一个地方来保存这些信息。这样就完了?对,完了,就这么简单。我们用c++代码实现一下。
// 定义一个学生类
struct Student
{
string name;
int age;
bool gender;
};
// 我们要统计一个班级的学生信息
int main()
{
// 1定义n个变量,每个变量代表一个学生,但是要说明的是,每个变量必须包含每个学生的姓名、年龄、性别、学号,这样才能保证每个变量代表的是唯一一个人
/ / ,而不会出现差错,但是我们怎么定义这个变量呢,显然int不行,char*也不行,只能用一个叫做结构体(在c++中我愿意叫它类)的东西了。
Student zb = {"zhaoban",18,true};
Student wgb = {"wuguobo",20,true};
Student zb1 = {"zhangbao",19,true};
......
Student ln = {"linning",19,true};
// 2 这样我们定义了n个变量,代表n个学生,并且把学生的信息存储在了内存中,啊,我比较笨,不太会使用数组,也不会把学生的信息存放在内存之外的地方,这个事就交给大家了,这个程序只差那么一点就完美了,就是对Student类型进行定义,这回我都发现规律了,原来每个学生都包括一个名字,年龄和性别,交给我定义了啊,将它写在main函数之前就行。
return 0;
}
三、快乐的一天又结束了,回家补血去了。
本文通过生动的例子对比了面向对象编程与面向过程编程的区别,介绍了如何使用C++定义类来表示学生信息。
1231





