news 2026/7/8 22:40:12

1.什么是类?

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
1.什么是类?

1.类的定义

类(Class)是一种用户自定义的复合数据类型,它将数据(成员变量 / 属性)操作这些数据的函数(成员函数 / 方法)封装在一个逻辑单元中;类定义了一个抽象数据类型(ADT)的接口和实现,是创建对象(实例)的模板,通过访问控制(public/private/protected)实现封装,支持继承和多态,是面向对象编程(OOP)的核心基础。

2.创建一个类

// 1. 定义一个最简单的类 class SimpleClient { // 访问权限:public 表示外部可以直接调用下面的成员 public: // 构造函数(和类名相同,用于初始化对象) SimpleClient() : m_name("默认名称"), m_age(0) { std::cout << "SimpleClient 对象创建了!" << std::endl; } // 成员函数:设置名称 void setName(const std::string& name) { m_name = name; } // 成员函数:获取名称 std::string getName() { return m_name; } // 成员函数:打印信息(简单的功能演示) void printInfo() { std::cout << "名称:" << m_name << ",年龄:" << m_age << std::endl; } // 私有成员:只能在类内部访问,外部不能直接修改(封装的核心) private: // 成员变量(m_ 前缀是规范,代表“成员变量”) std::string m_name; // 存储名称 int m_age; // 存储年龄 };

3.类的实例化

1.栈中实例化

// 主函数:程序入口,用于测试这个类 int main() { // 2. 创建类的对象(实例化) SimpleClient client; // 3. 调用类的成员函数 client.setName("我的第一个类"); // 设置名称 client.printInfo(); // 打印信息 // 4. 获取并打印名称 std::cout << "获取到的名称:" << client.getName() << std::endl; return 0; }

2.堆中实例化

int main() { // ========== 1. 堆中实例化(无参构造) ========== // new 关键字:在堆上创建对象,返回指向该对象的指针 SimpleClient* client1 = new SimpleClient(); // 堆对象调用成员函数:用 -> (栈对象用 . ) client1->setName("堆对象1"); client1->printInfo(); // ========== 2. 堆中实例化(带参构造) ========== SimpleClient* client2 = new SimpleClient("堆对象2", 18); client2->printInfo(); // ========== 3. 手动销毁堆对象(必须!) ========== // delete 关键字:释放堆内存,调用析构函数 delete client1; delete client2; // 注意:销毁后指针变为“野指针”,建议置空 client1 = nullptr; client2 = nullptr; return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/8 7:40:09

比亚迪参观研学归来!这趟有点小值哦[特殊字符]

去到比亚迪总部&#xff0c;我总算明白它为啥能硬刚特斯拉&#x1f680; 这趟标杆研学直接给我打通任督二脉&#xff01;走进比亚迪深圳总部展厅直接被震住 那面专利墙一眼望不到头&#x1f4dc; 刀片电池针刺实验现场看的0爆燃&#xff01; CTB技术把空间利用率拉满&#xff0…

作者头像 李华
网站建设 2026/7/3 17:17:14

内网渗透靶场实操命令速查表

本速查表基于之前的 VulhubMetasploitable 2 靶场实操清单&#xff0c;涵盖从外网突破到持久化的全流程命令&#xff0c;可直接复制执行。环境说明&#xff1a;攻击机 Kali&#xff08;192.168.56.101&#xff09;、跳板机 Metasploitable 2&#xff08;192.168.56.102&#xf…

作者头像 李华
网站建设 2026/7/7 21:07:59

从零开始做一个最简单的CNN实例

一、CNN基本概念 站内已经有详细的教程 【深度学习】一文搞懂卷积神经网络&#xff08;CNN&#xff09;的原理&#xff08;超详细&#xff09;_卷积神经网络原理-CSDN博客、 二、完成一个简单实例需要掌握什么 1.张量基本操作 我们将张量基本操作分为 4 个层次 &#xff0…

作者头像 李华
网站建设 2026/7/8 16:36:36

《创业之路》-741-CTO的核心能力是前瞻性和技术预见能力,对未来机会方向的洞察能力

“CTO的核心能力是前瞻性和技术预见能力&#xff0c;是对未来机会方向的洞察能力。”这不仅是对技术领导者的深刻理解&#xff0c;更是对企业能否穿越周期、持续创新的关键判断。下面我们来系统深化这一观点&#xff0c;将其升华为一套 “CTO前瞻性能力模型” ——不仅说明“是…

作者头像 李华
网站建设 2026/7/8 20:26:25

喷砂除锈设备工艺流程是什么?| 广东鑫百通喷砂机厂家

喷砂除锈设备标准工艺流程&#xff1a;五步实现完美基材 喷砂除锈设备工艺远非简单的“用砂子打表面”&#xff0c;而是一套严谨、高效的系统工程。规范的工艺流程是确保处理质量、控制成本与保障安全的核心。 喷砂除锈设备标准流程可精炼为以下5个关键步骤。 第一步&#xff1…

作者头像 李华