c++面对对象(四)—— 封装

文章介绍了C++中的类(class)概念,包括封装的意义和语法,以及公共权限(public)、保护权限(protected)和私有权限(private)的区别。通过示例展示了如何创建和使用类,同时提到了struct与class在默认访问权限上的差异,并强调了头文件在同一项目中的使用规则。
摘要由CSDN通过智能技术生成

hi 其实前几天就学完啦 

懒得写哈哈哈

今天 我们要介绍的是class!!!

哇 这是第一次接触这个东西哎

虽然是在python里面见过

但还是不太懂 然后在c++里学到真的很开心哈哈哈

emm 我还学到了头文件的编写 哈哈哈 我好厉害(bushi

来吧 ~

封装

封装是c++面向对象三大特性之一

意义1

在设计类的时候,属性和行为写在一起,表现事物

语法: class 类名{ 访问权限: 属性 / 行为 };

就是说 写一个类:

eg:人类 

class Person
{
    
    public:
        //一些行为
    private:
        //成员属性
};
//要注意分号哦~~

意义2

类在设计时,可以把属性和行为放在不同的权限下,加以控制

访问权限有三种:

  1. public 公共权限

  2. protected 保护权限

  3. private 私有权限

eg:

//三种权限
//公共权限  public     类内可以访问  类外可以访问
//保护权限  protected  类内可以访问  类外不可以访问
//私有权限  private    类内可以访问  类外不可以访问

class Person
{
	//姓名  公共权限
public:
	string m_Name;

	//汽车  保护权限
protected:
	string m_Car;

	//银行卡密码  私有权限
private:
	int m_Password;

public:
	void func()
	{
		m_Name = "张三";
		m_Car = "拖拉机";
		m_Password = 123456;
	}
};

int main() {

	Person p;
	p.m_Name = "李四";
	//p.m_Car = "奔驰";  //保护权限类外访问不到
	//p.m_Password = 123; //私有权限类外访问不到

	system("pause");

	return 0;
}

然后我们可能会觉得 这不就是 struct 吗

其实不然

在C++中 struct和class唯一的区别就在于 默认的访问权限不同

区别:

  • struct 默认权限为公共

  • class 默认权限为私有

一般操作

成员属性设置为私有(private)

然后各种行为写成 共用(public)

eg:

class Person {
public:

	//姓名设置可读可写
	void setName(string name) {
		m_Name = name;
	}
	string getName()
	{
		return m_Name;
	}


	//获取年龄 
	int getAge() {
		return m_Age;
	}
	//设置年龄
	void setAge(int age) {
		if (age < 0 || age > 150) {
			cout << "你个老妖精!" << endl;
			return;
		}
		m_Age = age;
	}

	//情人设置为只写
	void setLover(string lover) {
		m_Lover = lover;
	}

private:
	string m_Name; //可读可写  姓名
	
	int m_Age; //只读  年龄

	string m_Lover; //只写  情人
};

一般来说 共有的是:

获取设置 的操作

自己在dev 上敲代码发现的亿些问题:

 就是我才知道编写的头文件要在同一项目下才能调用!!

哈哈是不是很蠢

 然后捏

我们新建了一个项目 就可以啦~好好好

快夸我!!!!!

是不是很棒哈哈哈

 

 然后就非常nice 的通过啦!~

好啦 今天的分享就到这里

下次见哦~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值