2.C++——类
2021/5/13 12:27:15
本文主要是介绍2.C++——类,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
C++-类学习笔记
整理者:满恂钰
1.基础知识
1.1类是什么
具有相同性质的对象,我们可以抽象称为类,类是同一类所有对象的变量和方法的蓝图或原型。所谓的"对象"是指现实世界中的一切事物。
1.2类是干嘛的
类抽象了具有相同性质的对象,当我们创建类的实例时,就建立了这种类型的一个对象,然后系统为类定义的实例变量分配内存。然后可以调用对象的实例方法实现一些功能。类是属于用户自定义的数据类型, 并且该类型的数据具有一定的行为能力, 也就是类中说描述的方法。相同类的实例共享相同的实例方法。
通常来说, 一个类的定义包含两部分的内容, 一是该类的属性, 另一部分是它所拥有的方法。
1.3基本的书写逻辑
语法: class 类名{ 访问权限: 属性 / 行为 };
例子:
class 类名
{
public:
//公共的行为或属性
private:
//私有的行为或属性
};
说明:
1. 类名需要遵循一般的命名规则;
2. public 与 private 为属性/方法限制的关键字, private 表示该部分内容是私密的, 不能被外部所访问或调用, 只能被本类内部访问; 而 public 表示公开的属性和方法, 外界可以直接访问或者调用。
3. 结束部分的分号不能省略。
1.3.1类的实现:类的实现就是完成其方法的过程。
1、 在类定义时定义成员函数(成员函数的实现可以在类定义时同时完成)
2、 在类外定义成员函数(在类外定义成员函数通过在类内进行声明, 然后在类外通过作用域操作符 :: 进行实现)
注意:对同一成员函数来说, 在类内声明的形式和类外对其定义时函数头形式, 二者其返回类型、成员函数名、参数列表都要一致。
3、对象定义:
语法: 类名 对象名1;
4、访问数据成员:
类的对象的公共数据成员可以使用直接成员访问运算符 . 来访问。
例子:
#include <iostream>
using namespace std;
class Box
{
public:
double length; // 长度
double breadth; // 宽度
double height; // 高度
// 成员函数声明
double get(void);
void set( double len, double bre, double hei );
};
// 成员函数定义
double Box::get(void)
{
return length * breadth * height;
}
void Box::set( double len, double bre, double hei)
{
length = len;
breadth = bre;
height = hei;
}
int main( )
{
Box Box1; // 声明 Box1,类型为 Box
Box Box2; // 声明 Box2,类型为 Box
Box Box3; // 声明 Box3,类型为 Box
double volume = 0.0; // 用于存储体积
// box 1 详述
Box1.height = 5.0;
Box1.length = 6.0;
Box1.breadth = 7.0;
// box 2 详述
Box2.height = 10.0;
Box2.length = 12.0;
Box2.breadth = 13.0;
// box 1 的体积
volume = Box1.height * Box1.length * Box1.breadth;
cout << "Box1 的体积:" << volume <<endl;
// box 2 的体积
volume = Box2.height * Box2.length * Box2.breadth;
cout << "Box2 的体积:" << volume <<endl;
// box 3 详述
Box3.set(16.0, 8.0, 12.0);
volume = Box3.get();
cout << "Box3 的体积:" << volume <<endl;
return 0;
}
2.对基本知识的扩展应用
2.1对象的作用域、可见域与生存周期:
类对象的作用域、可见域以及生存周期与普通变量的保持相同, 当对象生存周期结束时对象被自动撤销, 所占用的内存被回收, 需要注意的是, 如果对象的成员函数中有使用 new 或者 malloc 申请的动态内存程序不会对其进行释放, 需要我们手动进行清理, 否则会造成内存泄露。
3.在代码中的书写步骤
3.1 创建类
3.2设置访问修饰符(public、protected、private)
3.3定义变量和方法(类内或类外两种方式)
3.4主函数中创建实例化对象
4.注意事项
4.1 struct和class区别?
在C++中 struct和class唯一的区别就在于 默认的访问权限不同。
区别:
struct 默认权限为公共
class 默认权限为私有
5.参考网址:
5.1 C++ 类 & 对象:
https://www.runoob.com/cplusplus/cpp-classes-objects.html
5.2 C++类(Class)的定义与实现:
https://blog.csdn.net/xulingxin/article/details/81335030
这篇关于2.C++——类的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15PingCAP 黄东旭参与 CCF 秀湖会议,共探开源教育未来
- 2024-05-13PingCAP 戴涛:构建面向未来的金融核心系统
- 2024-05-09flutter3.x_macos桌面os实战
- 2024-05-09Rust中的并发性:Sync 和 Send Traits
- 2024-05-08使用Ollama和OpenWebUI在CPU上玩转Meta Llama3-8B
- 2024-05-08完工标准(DoD)与验收条件(AC)究竟有什么不同?
- 2024-05-084万 star 的 NocoDB 在 sealos 上一键起,轻松把数据库编程智能表格
- 2024-05-08Mac 版Stable Diffusion WebUI的安装
- 2024-05-08解锁CodeGeeX智能问答中3项独有的隐藏技能
- 2024-05-08RAG算法优化+新增代码仓库支持,CodeGeeX的@repo功能效果提升