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次;

相关推荐
卷无止境14 小时前
C++ 的Eigen 库全解析
c++
卷无止境14 小时前
现代 C++特性大盘点:一门脱胎换骨的老语言
c++·后端
郝学胜_神的一滴15 小时前
CMake 27:缓存变量的特性、语法、类型与实操全解
c++·cmake
kisshyshy15 小时前
从递归到迭代,一文吃透二叉树的核心知识与 JavaScript 实现
javascript·算法·代码规范
To_OC1 天前
LC 49 字母异位词分组:想到哈希表很简单,选对 key 才是精髓
javascript·算法·leetcode
用户938515635071 天前
从 O(n²) 到 O(nlogn):一文读懂快速排序的“快”与“妙”
javascript·算法
To_OC1 天前
手写快排次次翻车?别死背快排模板了,这才是面试官想听的底层逻辑
javascript·算法·排序算法
饼干哥哥1 天前
Reddit VOC调研太慢?搭一个AI专家团队半小时洞察任何品类|以猫用饮水机为例
人工智能·算法·ai编程
地平线开发者1 天前
Transformer模型部署之性能优化指南
算法
地平线开发者1 天前
人在途中:从“编译失败”到“模型可落地”——CUDA 自定义算子
算法·自动驾驶