第3章 类和对象(一)

3.1类的构成

3.1.1从结构体到类

例【3.1】有关成绩结构体的例子

#include <iostream>
using namespace std;
struct Score            //声明了一个名为Score的结构体
{   int mid_exam;
	int fin_exam;
};
int main()
{
	Score score1;
	score1.mid_exam=80;//可以在结构体外直接访问数据mid_exam
	score1.fin_exam=88;//可以在结构体外直接访问数据fin_exam
	cout<<"期中成绩:"<<score1.mid_exam<<"\n期末成绩:"<<score1.fin_exam
	<<"\n总评成绩:"<<(int)(0.3*score1.mid_exam+0.7*score1.fin_exam)<<endl;
	return 0;
}

程序的运行结果如下:

期中成绩:80
期末成绩:88
总评成绩:85

--------------------------------
Process exited after 0.01235 seconds with return value 0
请按任意键继续. . .

c语言中的结构体存在一些缺点。一旦建立了一个结构体变量,就可以在结构体外直接访问数据。

在c结构体中的数据是很不安全的,c结构体无法对数据进行保护和权限控制。

因此,在c++中,引入了类的概念。类比结构体更加安全有效。

3.1.2类的构成概述。

类的声明格式:

class a{
	public:
		公有数据成员;
		公有成员函数;
	protected:
		保护数据成员;
		保护成员函数;
	private:
		私有数据成员;
		私有成员函数;
};

 用一个类Score来描述分数,其形式如下:

class Score{
	public:
		void setScore(int m,int f);//公有成员函数
		void showScore();//公有成员函数
	private:
		int mid_exam;//私有数据成员
		int fin_exam;//私有数据成员
};
  • 类体中一般有 private、protected 和 public 3 个关键字,被称为访问权限关键字。私密性:private>protected>public
  • private:私有部分。只能由本类的的成员函数访问,不能在类的外部访问。
  • public:公有部分。类内类外都可访问,对外完全开放。公有成员函数是类与外界的接口,来自类外部的访问需要通过这种接口来进行。
  • protected:保护部分。保护成员可以由本类的成员函数访问,也可以由本类的派生类的成员函数访问,而类外的任何访问都是非法的,即它是半隐蔽的。

说明:

  1. 对一个具体的类来讲,类声明格式中的 3 个部分并非一定要全有,但至少要有其中的一
    部分。
  2. 若私有部分处于类体中第一部分时,关键字 private 可以省略。
  3. 不能在类声明中给数据成员赋初值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值