0

我想从 stl 向量类继承一个名为算术向量的类。我的问题是方括号重载。这是代码:

    template<class type>
type& ArithmeticVector<type>::operator[](int index) const{

    if(this->size()<=index || index < 0){

        throw string("Size Error!");

    }else{

        return vector<type>::operator[](index);

    }

}

它给出了错误:

将对类型的引用绑定到类型int的值会const int删除限定符。

在行中:

        return vector<type>::operator[](index);

我该如何解决?

4

1 回答 1

3

您应该删除const或添加const

template <class type>
const type& ArithmeticVector<type>::operator[](int index) const

template <class type>
type& ArithmeticVector<type>::operator[](int index)
于 2013-05-19T17:57:24.887 回答