使用auto_ptr或删除数组时C ++程序崩溃

时间:2015-10-13 09:49:45

标签: c++ windows gcc

我在Windows下使用g ++(使用cygwin)。当我使用auto_ptr或删除数组时,我的程序崩溃了。 这是两个例子,在运行时崩溃。我没有得到任何编译错误。

gcc版本是5.2.0-1。

我用它编译它 g++ -O3 -g0 -Wall -c -fmessage-length=0 -std=c++14 -MMD -MP -MF"src/PtrTest.d" -MT"src/PtrTest.o" -o "src/PtrTest.o" "../src/PtrTest.cpp"

示例1:

#include <iostream>
#include <memory>
int main() {
    std::auto_ptr<int> test1(new int);

    return 0;
}

示例2:

#include <iostream>
#include <array>

int main() {
    std::array<int, 4> *a = new std::array<int,4>;
    delete a;

    return 0;
}

有什么想法吗?

非常感谢!

0 个答案:

没有答案