private: void ReSize(int sz) { if(sz <= 0 ) { return; } if(maxSize != sz) { T *arr = new T[sz]; if(arr == NULL) { return; } int n = size + 1; T *src = data; T *des = arr; while(n--) { *des++ = *src++; } delete[] data; data = arr; maxSize = sz; } } };
bug1:maxSize error C2065: 'maxSize' : undeclared identifier,maxSize也没有赋值, 所以maxSize != sz 无法比。
bug2:size error C2065: 'size' : undeclared identifier, 所以 int n = size + 1;这条语句会报错。
bug3:*des++ 会越界。
bug4: T *src = data; 因为没有定义data,所以这条语句会报错。
bug5:delete[] data;