dev c++内存释放不报错,而visual c++报错



#include<iostream>
using namespace std; 
class Vector
{
    int size;
    int * buffer;
public:
    Vector(int s=100);
    void display();
//    Vector(Vector &src);
    ~Vector();
};
 Vector::Vector(int s)
{       buffer=new int [size=s] ;
    for(int i=0;i<size;i++)
    buffer[i]=i*i;
}

/*Vector::Vector(Vector &src)
{
    size=src.size;
    buffer=new int[size];
    for(int i=0;i<size;i++)
    {
         buffer[i]=src.buffer[i];
    }
}*/
 void Vector::display()
    {
    for(int i=0; i<size; i++)
     cout<<buffer[i];
  cout<<endl;    
    }
Vector::~Vector()
{
    delete[]buffer;
}
int main()
{
    Vector a(10);
    Vector b(a);
    a.display();
      b.display();
}

拿两个二进制文件反汇编对比一下。

不需要delete吧,new 和delete成对出现