welcome008
结构体中的char *index 需要单独delete吗?
看到一部分代码如下:
#include<iostream>
#include<string.h>
using namespace std;
struct vecelem {
char *index;
int value;
};
class assocvec {
vecelem * elems;
int dim;
int used;
public:
assocvec(int dim_d);
~assocvec();
int & operator [] (char *idx) ;
void print();
};
assocvec::assocvec(int dim_d) {
dim = dim_d;
used = 0 ;
elems = new vecelem[dim] ;
}
assocvec::~assocvec() {
for( int j = 0 ; j < used ; j++)
delete elems[j].index ;
delete elems ;
}
为什么要对elems[j].index单独delete?
而且没有显示的new与那个delete匹配啊。