【发布时间】:2022-01-13 04:14:37
【问题描述】:
arrayADT.h
#include <iostream>
using namespace std;
template <class T>
class arrayADT
{
private:
T *A;
static int size;
static int length;
public:
arrayADT(){
size=10;
A= new T[size];
length=0;
}
void increaseSize(){
T *p;
size=size*2;
p= new T[size];
delete[] A;
A=p;
p=NULL;
}
int getSize(){
return size;
}
~arrayADT();};
example.cpp
#include<iostream>
#include<stdio.h>
#include"arrayADT.h"
using namespace std;
int main(int argc, char const *argv[])
{
arrayADT<int> s;
s.increaseSize();
s.getSize();
return 0;
}
得到错误:
对 `arrayADT::~arrayADT()' 的未定义引用
对 `arrayADT::~arrayADT()' 的未定义引用
对 `arrayADT::length' 的未定义引用
对 `arrayADT::size' 的未定义引用
谁能帮帮我?非常感谢!
【问题讨论】:
-
请准确描述您是如何编译程序的。