news 2026/1/31 13:10:19

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/1/27 8:12:00

工艺过程镜像系统:制造过程的数字孪生

在工业制造迈向智能化、数字化的浪潮中&#xff0c;精准掌控工艺过程、实时保障产品质量、高效管理生产任务成为企业提升竞争力的关键。蕴硕物联凭借深厚的技术积累与创新精神&#xff0c;精心打造的“工艺过程镜像系统”&#xff0c;为工业制造领域带来了一场变革性的突破。01…

作者头像 李华
网站建设 2026/1/26 0:56:54

小程序计算机毕设之基于springboot+微信小程序的影院售票系统设计与实现基于微信小程序的影院售票系统设计与实现(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/1/30 12:37:02

创客匠人思辨:知识付费的终点——从“内容消费”到“数据资产共建”

知识付费行业正站在一个拐点上。用户为焦虑和信息差付费的初级阶段已经过去&#xff0c;单纯的“内容交付”越来越难以支撑可持续的商业模式。创客匠人观点中隐含了一条更深刻的线索&#xff1a;未来的知识服务&#xff0c;其价值闭环的终点可能不再是“交易完成”&#xff0c;…

作者头像 李华
网站建设 2026/1/31 12:10:28

从基础到进阶:CAD 框架下一步开发路线(新手实操版)

我们已经完成了 CAD 基础框架搭建和性能优化&#xff0c;现在你可能会问&#xff1a;“接下来该往哪个方向走&#xff1f;” 新手最忌 “贪多求全”&#xff08;比如直接上手 3D 建模、复杂约束&#xff09;&#xff0c;也忌 “停滞不前”&#xff08;只停留在画点线圆&#xf…

作者头像 李华
网站建设 2026/1/28 8:28:38

小程序计算机毕设之基于springboot的“智宠”一站式宠物服务小程序的设计与实现宠物医疗保健、宠物用品购买、宠物知识获取(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/1/27 8:39:50

小程序计算机毕设之基于springboot的华兴书城微信小程序基于SpringBoot的微信小程序书店(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华