首页 > 解决方案 > 关于新实例的内存泄漏?

问题描述

如果以下代码中存在内存泄漏,我会感到困惑。

Pose2 wheel_odom_;
while (1)
{
    wheel_odom_ = Pose2(position.x, position.y, position.yaw); // memory leakag??
}

我认为在while循环中会有内存泄漏,因为每次都在创建新实例,但我不确定如何在没有泄漏的情况下弄清楚它。

标签: c++

解决方案


不,这里没有任何内存泄漏(除非构造函数或赋值Pose有错误)。

您的代码片段中的所有对象都具有自动存储持续时间,这意味着编译器会自动处理存储的分配/解除分配和对象的销毁。

C++ 上的大多数内存泄漏问题都来自显式 using new,顺便说一句,您不应该这样做。


推荐阅读