【C++】类与对象相关知识总结

1、类的定义

class className//className为类的名字
{
	//内部写成员函数和成员变量
};

类似于C中的结构体,只不过C中结构体不可以定义函数。

(1)声明和定义全放在类体中

成员函数如果在类中定义,编译器会将它当作内联函数来处理。所以一般不采用

class Person
{
public:
	void show()
	{
		cout << _name << "-" << _sex << "-" << _age << endl;
	}
public:
	char* name;
	char* _sex;
	int age;
};

(2)声明放在.h中,类的实现放在.cpp中

常用这种方法

//person.h文件
class Person
{
public:
	void show();
public:
	char* name;
	char* _sex;
	int age;
};
//person.cpp文件
#include"person.h"

void Person::show()
{
	cout << _name << "-" << _sex << "-" << _age << endl;
}

2、类的访问限定符

将类的对象的属性和方法结合起来,通过访问权限选择性将其接口提供给外部使用。
(1)public (公有),它修饰的成员在类外可以被直接访问。
(2)protected(保护)和private(私有)修饰的成员在类外不能被直接访问。
(3)面试题:C++中的struct和class有什么区别?
C++需要兼容C语言,所以C++中的struct还可以用来定义类。与class定义类是相同的,区别在于class的默认访问权限为private,struct的默认访问权限为public。

3、封装

(1)面向对象的三大特征:封装、继承、多态。
(2)在类和对象阶段,我们只研究封装特性。什么是封装?
封装:将数据和操作数据的方法结合起来,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行交互。
(3)封装的本质是一种管理,用protected/private把成员封装起来,开放一些共有的成员函数对成员合理的访问。

4、类的实例化

C语言中是面向过程的,主要关注于过程;C++是基于面向对象的,主要关注于对象。
用类来创建对象的过程称为类的实例化。
举个形象的例子:
类就像是设计图,是不可以住人的,而实例化对象就是可以主人的实体建筑。
也就是说类实例化出来的对象才能实际存储数据。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值