相关疑难解决方法(0)

什么是三法则?

  • 什么是抄袭的对象是什么意思?
  • 什么是复制构造函数复制赋值运算符
  • 我什么时候需要自己申报?
  • 如何防止复制对象?

c++ c++-faq copy-constructor assignment-operator rule-of-three

2067
推荐指数
8
解决办法
27万
查看次数

在队列::推送后双重免费或损坏

#include <queue>
using namespace std;

class Test{
    int *myArray;

        public:
    Test(){
        myArray = new int[10];
    }

    ~Test(){
        delete[] myArray;
    }

};


int main(){
    queue<Test> q
    Test t;
    q.push(t);
}
Run Code Online (Sandbox Code Playgroud)

运行此操作后,我收到运行时错误"double free or corruption".如果我摆脱析构函数内容(delete),它工作正常.怎么了?

c++ runtime-error delete-operator

52
推荐指数
2
解决办法
10万
查看次数