news 2026/4/17 15:24:09

10. 构造方法和析构方法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
10. 构造方法和析构方法

1.构造方法

2.析构方法


1.构造方法

a.核心定义 构造函数是类的特殊成员函数,当对象被创建时自动调用,唯一作用是初始化对象的成员变量、 分配资源(如动态内存、文件句柄、网络连接等)

b.语法核心特点


c.常见类型-无参构造函数(默认构造)#include <iostream>#include <string>usingnamespacestd;classPerson{public:// 无参构造函数(手动定义)Person(){name="未知";age=0;cout<<"Person无参构造函数被调用"<<endl;}// 成员变量stringname;intage;};intmain(){// 创建对象时,自动调用无参构造函数Personp1;cout<<"p1.name: "<<p1.name<<", p1.age: "<<p1.age<<endl;// 输出:Person无参构造函数被调用 → p1.name: 未知, p1.age: 0return0;}
-带参构造函数(重载)classPerson{public:// 无参构造Person(){name="未知";age=0;cout<<"Person无参构造函数被调用"<<endl;}// 带参构造(重载)Person(stringn,inta){name=n;age=a;cout<<"Person带参构造函数被调用"<<endl;}stringname;intage;};intmain(){// 调用带参构造Personp2("张三",20);cout<<"p2.name: "<<p2.name<<", p2.age: "<<p2.age<<endl;// 输出:Person带参构造函数被调用 → p2.name: 张三, p2.age: 20return0;}

2.析构方法

a.核心定义 析构函数是类的特殊成员函数,当对象被销毁时自动调用(比如对象出作用域、delete动态对 象),唯一作用是释放对象占用的资源(如动态内存、关闭文件、释放锁)

b.语法核心特点

c.核心示例classStudent{public:// 构造函数:分配动态内存Student(stringn){name=newstring(n);// 动态分配string内存cout<<"Student构造函数:分配了动态内存"<<endl;}// 析构函数:释放动态内存~Student(){deletename;// 释放构造时分配的内存cout<<"Student析构函数:释放了动态内存"<<endl;}string*name;// 指针成员,指向动态内存};intmain(){{// 局部对象:出这个代码块时自动销毁,调用析构Students("王五");cout<<"s.name: "<<*s.name<<endl;}// 输出顺序:// Student构造函数:分配了动态内存 → s.name: 王五 → Student析构函数:释放了动态内存return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/10 22:03:08

构建AI Agent的自适应学习系统

构建AI Agent的自适应学习系统 关键词:AI Agent、自适应学习系统、机器学习、强化学习、神经网络 摘要:本文旨在深入探讨构建AI Agent的自适应学习系统这一前沿技术领域。通过详细阐述自适应学习系统的核心概念、算法原理、数学模型,结合项目实战案例,展示如何实现一个高效…

作者头像 李华
网站建设 2026/4/15 5:13:40

搭建终身学习系统时,AI应用架构师容易犯哪些错?(避坑指南)

AI应用架构师搭建终身学习系统的10个常见坑与避坑指南 副标题&#xff1a;从数据管道到模型部署的实践教训 摘要/引言 在AI从“静态工具”转向“动态系统”的今天&#xff0c;终身学习&#xff08;Lifelong Learning&#xff09; 已成为企业保持AI竞争力的核心能力——它让模型…

作者头像 李华
网站建设 2026/3/27 14:06:23

前端萌新别慌!30分钟搞懂CSS阴影:text-shadow和box-shadow实

前端萌新别慌&#xff01;30分钟搞懂CSS阴影&#xff1a;text-shadow和box-shadow实 前端萌新别慌&#xff01;30分钟搞懂CSS阴影&#xff1a;text-shadow和box-shadow实战指南先别急着写代码&#xff0c;咱先吐槽五分钟先整点能跑的&#xff0c;把士气提上来text-shadow&#…

作者头像 李华
网站建设 2026/4/15 19:12:19

指针进阶:二级指针与指针的指针的应用场景

指针进阶&#xff1a;二级指针与指针的指针的应用场景 在C指针学习中&#xff0c;二级指针&#xff08;又称指针的指针&#xff09;是从基础指针迈向进阶的关键节点。前文我们了解到&#xff0c;一级指针存储的是普通变量的内存地址&#xff0c;而二级指针的核心是“存储一级指…

作者头像 李华
网站建设 2026/4/15 0:42:53

AI智能体完全指南:无需编程基础,四步打造专属AI助手

本文详解AI智能体搭建方法&#xff0c;从入门到进阶&#xff0c;包括四步创建流程、个性化设置、知识库运用和指令迭代技巧。文章强调将AI视为协作者而非工具&#xff0c;根据场景选择适合的大模型&#xff0c;并提供多个国内免费平台推荐。无需编程基础&#xff0c;即可打造专…

作者头像 李华