C++:析构函数

news/2024/12/22 10:54:04/

在销毁对象时,系统也会自动调用一个函数,它就是析构函数。析构函数没有返回值,它的函数名是在类名前加一个 ~ 符号。析构函数没有参数,不能被重载,这也就意味着析构函数只有一个,若没有写虚构函数,则会有一个默认的析构函数。

例如:

#include<iostream>
using namespace std;class AA
{
public:int* p;
public:AA(){p = new int(100);cout << "AA" << endl;}~AA(){delete p;cout << "~AA" << endl;}
public:void Show(){cout << *p << endl;}};int main()
{int* pp = NULL;{AA aa;aa.Show();pp = aa.p;}cout << *pp << endl;//若无析构函数*pp=100return 0;
}


http://www.ppmy.cn/news/1527028.html

相关文章

CSS 响应式设计(补充)——WEB开发系列36

随着移动设备的普及&#xff0c;网页设计的焦点逐渐转向了响应式设计。响应式设计不仅要求网页在各种屏幕尺寸上良好展示&#xff0c;还要适应不同设备的特性。 一、响应式设计之前的灵活布局 在响应式设计流行之前&#xff0c;网页布局通常是固定的或流动的。固定布局使用固定…

鸡蛋检测系统源码分享

鸡蛋检测检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vision …

MySQL中几种常见的行格式

在MySQL中&#xff0c;ROW_FORMAT 是用来指定表中行的存储格式的属性。不同的行格式会影响数据的存储方式&#xff0c;进而影响存储空间的使用效率和访问性能。ROW_FORMATCOMPACT 是其中一种行格式&#xff0c;表示“紧凑格式”。 以下是MySQL中几种常见的行格式&#xff1a; …

数据分析中:相关系数计算方法怎么选择合适?

选择合适的相关系数计算方法可以考虑以下几个方面&#xff1a; 一、数据类型 连续变量与连续变量&#xff1a; 皮尔逊相关系数&#xff1a;当两个连续变量之间呈线性关系&#xff0c;且数据满足正态分布假设时&#xff0c;皮尔逊相关系数是一个很好的选择。它衡量的是两个变量…

.NET 6.0 + WPF 使用 Prism 框架实现导航

合集 - .NET 基础知识(3) 1..NET 9 优化&#xff0c;抢先体验 C# 13 新特性08-202.《黑神话&#xff1a;悟空》神话再现&#xff0c;虚幻引擎与Unity/C#谁更强&#xff1f;08-21 3..NET 6.0 WPF 使用 Prism 框架实现导航09-11 收起 阅读目录 前言什么是Prism?安装 Prism使…

每日奇难怪题(持续更新)

1.以下程序输出结果是() int main() {int a 1, b 2, c 2, t;while (a < b < c) {t a;a b;b t;c--;}printf("%d %d %d", a, b, c); } 解析:a1 b2 c2 a<b 成立 ,等于一个真值1 1<2 执行循环体 t被赋值为1 a被赋值2 b赋值1 c-- c变成1 a<b 不成立…

物流系统中的嵌入式:STM32微控制器与智能算法驱动的物理循迹小车详细流程

一、项目概述 本项目旨在开发一款基于STM32微控制器的物理循迹小车&#xff0c;具备二维码识别能力&#xff0c;并能够将物品送到指定的物流位置。通过传感器和算法的结合&#xff0c;小车将实现自主导航和路径规划&#xff0c;从而提高物流效率和准确性。项目的目标是为智能物…

es6中set和map的区别

在ES6&#xff08;ECMAScript 2015&#xff09;中&#xff0c;Set 和 Map 是两种新的集合类型&#xff0c;它们提供了更高级的数据结构来存储唯一值或键值对集合。尽管它们在功能上有些相似&#xff0c;但它们在用途和内部机制上存在一些关键区别。 1. 基本概念 Set&#xff1…