C++ 模板<;typename T>;类数组 模板 类数组 { 公众: 数组(int size):大小(size); 数组(const数组和right):数组(right.size); 虚拟数组(); T&运算符[](整数索引); T&运算符[](int索引)常量;

C++ 模板<;typename T>;类数组 模板 类数组 { 公众: 数组(int size):大小(size); 数组(const数组和right):数组(right.size); 虚拟数组(); T&运算符[](整数索引); T&运算符[](int索引)常量;,c++,templates,C++,Templates,我在实现这个函数时遇到问题,你能帮助我吗?很难说你的问题是什么,但是你没有正确地编写构造函数。初始化列表与构造函数定义一起,而不是它的声明。或者在类定义中包含定义,例如 template <typename T> class Array { public: Array(int size) : size(size); Array(const Array& right) : Array(right.size); virtual ~Array(); T&

我在实现这个函数时遇到问题,你能帮助我吗?

很难说你的问题是什么,但是你没有正确地编写构造函数。初始化列表与构造函数定义一起,而不是它的声明。或者在类定义中包含定义,例如

template <typename T>
class Array
{
public:
    Array(int size) : size(size);
    Array(const Array& right) : Array(right.size);
 virtual ~Array();

T& operator[](int index); 
T& operator[](int index) const;
或者,从类定义中删除初始化列表,并在类下面定义它:

Array(int size) : size(size) {}
模板
数组::数组(整数大小)
:尺码(尺码)
{
//做点什么。。。
}

可能。有什么问题吗?我们需要更多的信息,你有什么问题?你有什么错误?你试过编译它吗?int main(){//不要更改这个数组arr(5);arr[0]=1;arr[1]=2;这是什么意思?
template <typename T>
Array<T>::Array(int size)
: size(size)
{
    // do something...
}