【问题标题】:template <typename T> class Array模板 <typename T> 类数组
【发布时间】:2015-06-05 11:30:53
【问题描述】:
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;

我实现这个功能有问题,你能帮帮我吗?

【问题讨论】:

  • 可能。有什么问题?
  • 我们需要更多信息,您遇到了什么问题?你得到什么错误?你试过编译吗?

标签: c++ templates


【解决方案1】:

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

Array(int size) : size(size) {}

或者,从类定义中去掉初始化列表,在类下面定义:

template <typename T>
Array<T>::Array(int size)
: size(size)
{
    // do something...
}

【讨论】:

  • int main() { //不要改变这个数组 arr(5); arr[0] = 1; arr[1] = 2; cout
  • 这是什么意思?
猜你喜欢
  • 2021-09-15
  • 2013-04-05
  • 2021-10-29
  • 2017-04-01
  • 2011-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-05
相关资源
最近更新 更多