C++资源重复释放问题

这不是自己释放了2次;

可能是类互相引用,有类似现象释放资源时引起;还不太了解;

类对象作为函数参数也会引起;

下面是一个简单示例;

cpp 复制代码
#include <iostream>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>

using namespace std;

class A{
    public:
	A()
	{
		std::cout<<"String A"<<std::endl;
	}

	~A(){
		std::cout<<"Ending Class A"<<std::endl;
	}
};

A a1;

void func(A a)
{
	return ;
}

int main(int argc,char **argv)
{
	func(a1);
	return 0;
}

从运行结果看,析构函数被调用了2次;

相关推荐
我不是懒洋洋1 分钟前
从零实现一个分布式数据管道:dbt的核心设计
c++
程序员-Benothing6 分钟前
Java集合:List实现类深度对比
java·开发语言·后端·面试·list
wabs6668 分钟前
关于图论【卡码网108.多余的边的思考】
数据结构·算法·图论
酷在前行13 分钟前
【R论文复刻】Nature Communications 冲积图进阶:状态转移、流带排序与多面板排版(保姆级教程)
开发语言·r语言
Darkwanderor24 分钟前
使用管道实现进程间通信 (IPC, Inter-Process Communitation)
linux·c语言·c++
减瓦27 分钟前
用 Git 为本地文件打造一台时光机
开发语言·git·编辑器
乱七八糟的屋子32 分钟前
【C++数值计算】Armadillo超详细入门教程
c++·线性代数·数值计算·科学计算·矩阵运算·armadillo
Yyyyyy~36 分钟前
【C++】vector
c++·c++primer
冻柠檬飞冰走茶36 分钟前
PTA基础编程题目集 7-37 整数分解为若干项之和(C语言实现)
c语言·开发语言·数据结构·算法
运维大师1 小时前
【K8S 运维实战】31-Helm包管理
运维·算法·kubernetes