类与结构体(4)

简明扼要:上一期我们说了,这一期讲类的入门。

类是什么,类该怎么用,为什么要用类?

我们先来回答第一个问题,类是什么?

类是什么?

C++在C的基础上增加了面向对象编程(C是面向过程编程),C++ 支持面向对象程序设计。类是C++的一个核心。类与结构体相似,但类有更多功能,知识点也就更多。

类该怎么用(1)?

类该怎么用呢?这么久都还没入正题。

我们先来了解一下类该怎么定义:

1.首先类和int一样要一个关键字(key word:int 也是关键字)。关键字有int,double,float,long······

类在C++中的关键字是class

2.类和结构体一样也要括号{};<-注意一定要打分号

3.类是有三种成员函数有public(公有成员函数),private(私用成员函数),protected(受保护成员函数)。public,private,protected统称为访问修饰符。

我们先来简单写一个类:

class student{
	public:
		string name;
		int age, finalexam;
};

我们还可以像struct一样在这里面写函数。

class student{
	public:
		string name;
		int age, finalexam;
		bool operator<(const student& Student)const{
			if(finalexam != Student.finalexam) return finalexam < Student.finalexam;
			// 类的成员用‘.’来访问,这里是比较学生的期末成绩,如果不相等就把小的排在前面。
			return age < Student.age;
			// 如果期末成绩相等就把年龄小的排在前面(写注释是好习惯)。
		}
};

这里又有一个知识。

来看一下下面这段代码

class student{
	public:
		string name;
		int age, finalexam;
		bool operator<(const student* &Student)const{
			if(finalexam != Student->finalexam) return finalexam < Student->finalexam;
			// 类指针的成员用‘->’(箭头)来访问,这里是比较学生的期末成绩,如果不相等就把小的排在前面。
			return age < Student->age;
			// 如果期末成绩相等就把年龄小的排在前面(写注释是好习惯)。
		}
};

这个是箭头的用法。当让(*Student).finalexam也可以代替箭头。

class student{
	public:
		string name;
		int age, finalexam;
		bool operator<(const student* &Student)const{
			if(finalexam != (*Student).finalexam) return finalexam < (*Student).finalexam;
			// 类指针的成员用‘*.’来访问,这里是比较学生的期末成绩,如果不相等就把小的排在前面。
			return age < (*Student).age;
			// 如果期末成绩相等就把年龄小的排在前面(写注释是好习惯)。
		}
};

下期预告:

下期讲:类该怎么用(2),(3)。

你可能感兴趣的:(c++,数据结构)