今天的文章末尾有留言功能,上次文章里面有写错的地方,不好改(多谢网友们指出错误!),所以下次文章中有写错的地方,可以在留言处纠正过来,这样就比较方便了,同时也可以和各位网友在线交流!今天也是第一次分享c++的文章,暂时我先从c++里面的对象和类开始分享,前面的一些基础知识点,后期会补上。
面向对象基本概念
对于自己来说,已经不是第一次接触面向对象的语言和思想了,因为在这前,已经接触过python了,它也是一门面向对象的语言;对于面向过程语言和面向对象语言,使用习惯了面向过程语言的话(比如说c语言),刚开始学习面向对象的语言时,可能会很不习惯这种面向对象思想;比如我们经常使用c语言来实现一个功能(一般都是通过函数来实现一个功能模块,在具体实现的话,直接在主函数main里面调用这个函数就行了),但是用面向对象语言来实现同样一个功能的话,你的写法和想法就不是这样了;这里暂时的话,先不讲,我们先来看一下下面一些基本的面向对象基础概念:
1、类和对象的概念:
注意:一个类可以有很多对象,而一个对象必然是属于某个类的(这里面我们讲的对象,可以不是我们交往的对象哦,记住千万不要想多了,哈哈!)。
下面就举一个具体的例子来理解对象和类(比如下面的图片,鱼是所有鱼类的总称,这就是表示类,而具体叫什么名字就是对象):
2、类和对象的意义:
3、类之间的基本关系:
继承:
组合:
4、类的表示:
下面我们是从一个具体例子来来慢慢引入到我们熟悉的编程语言方式来表示:
接着:
这里存在两个问题,仔细观察的话:
所以还有接下来的表示:
注意这样上一步的问题是让我们解决了,但是我们还有一个问题,这样写的话,我们的编译器不认识我们这样写,接下来我们就要用我们所学的编程语言来表示了:
#include <stdio.h>
struct Biology {
bool living;
};
struct Animal : Biology {
bool movable;
void findFood() { }
};
struct Plant : Biology {
bool growable;
};
struct Beast : Animal {
void sleep() { }
};
struct Human : Animal {
void sleep() { }
void work() { }
};
int main()
{
return 0;
}
注意:我们的类写法:一般是英文单词开头大写的,其实这里的写法和我们c语言里面的结构体写法很像;类之间继承使用":"来衔接的。
总结
今天的文章就分享到这里了,晚安!