代码之家  ›  专栏  ›  技术社区  ›  Steven Behnke

使用g++时,是否有运行时设置来使用delete对释放的内存进行加扰?

  •  1
  • Steven Behnke  · 技术社区  · 14 年前

    有人知道我怎样才能让g++或gcc运行时在删除后扰乱对象所在的RAM吗?我有一个理论,我正在使用一个被删除后的对象,但实际上它很少崩溃。

    3 回复  |  直到 14 年前
        1
  •  1
  •   Digicoder    14 年前

    inline void operator delete(void* memblock) { //you custom stuff } 将覆盖全局。我以前用它来保护安全,这样我们就可以把内存调零,这样它就不太可能泄露重要的信息。

        2
  •  3
  •   Douglas Leeder    14 年前

    我建议你和Valgrind一起跑步——这会告诉你你是否在释放内存之后访问它。

        3
  •  0
  •   Paul Nathan    14 年前

    你可以超载 delete 如果你喜欢的话。