C++ note------类(class)的基础认识

本文介绍了C++中的类,包括类的创建、访问权限、成员属性和行为。讨论了将成员属性设为私有的好处,并展示了立方体类和圆类的设计,以及如何通过封装点类和圆类提高代码可维护性。
摘要由CSDN通过智能技术生成

一、类的介绍

C++中的类,相当于C语言中的结构体,不过C++的类所包含的不仅仅变量,还有函数,

并且,类的使用更加的灵活。

二、创建一个类class
下面是创建一个圆类,一个类中主要有三部分:访问权限、属性、行为。

#include <iostream>
using namespace std;

const double PI = 3.14;
//设计一个圆类,求周长
class Circle
{
   
	//访问权限
	//公共权限
public:
	//属性
	//
	int m_r;
	//行为
	double calculateZC()
	{
   
		return 2 * PI * m_r;
	}
};

int main()
{
   
	//通过圆类,创建具体圆,即对象
	//实例化(通过一个类,创建一个对象的过程)
	Circle c1;
	//给圆对象的属性赋值
	c1.m_r = 10;
	cout << "圆周长:" << c1.calculateZC() << endl;
	system("pause");
}

接下来创建一个学生类
另外,类中的属性和行为统一称为成员
属性 = 成员属性 = 成员变量
行为 = 成员函数 = 成员方法

#include <iostream>
using namespace std;
#include <string>
class Student
{
   
	//访问权限
public:
	//属性
	string m_name;
	int m_Id;
	//行为
	void showStudent()
	{
   
		cout << "姓名:" << m_name << "学号:" << m_Id << endl;
	}
	void setname(string name)
	{
   
		m_name = name;
	 }
	void setid(int id)
	{
   
		m_Id = id;
	}
};
int main()
{
   
	Student s1;
	//给圆对象的属性赋值
	//s1.m_name = "张三";
	s1.setname("张三");
	//s1.m_Id = 1;
	s1.setid(1);
	s1.showStudent();
	system("pause");
}

三、访问权限
public---------公共权限 --------------可类内访问--------------可类外访问
protected— 保护权限--------------可类内访问-------------不可类外访问
private-------私有权限--------------可类内访问-------------不可类外访问

#include <iostream>
using namespace std;
#include <string>
class Person
{
   
public:
	string m_Name;
protected:
	string m_Car;
private:
	int m_Password;
public:
	void func()
	{
   
		m_Name = "zhangsan";
		m_Car = "benz";
		m_Password = 111111;
	}
};
int main()
{
   
	Person p1;
	p1.m_Name = "lisi";
	//p1.m_Car = "toyoto";//报错,保护权限内容,类外访问不到
	//p1.m_Password = 1;//私有权限内容,无法访问
	system("pause");
}

struct与class
一般情况下,struct 默认权限为公共,class 默认权限为私有

四、成员属性设为私有
一是可以自主控制读写权限,二是写数据时,可以检测数据有效性

一般来说,是将成员变量的访问权限设为私有权限,使得class外部无法直接访问,再通过成

员函数来使class外部间接地对成员变量进行读写操作,但要注意的是,成员函数的访问权限

需要设为公共访问权限。

#include <iostream>
using namespace std;
#include <string>

class Person
{
   
public:
	void setName(string name)
	{
   
		m_Name = name
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值