Я пытаюсь вернуть итератор для вектора в шаблонном классе (я не уверен, что это имеет значение, но я читал, что может, поэтому я думал, что упомяну это). Проблема в том, что я получаю ошибку о том, что C ++ не поддерживает default-int, когда я пытаюсь это сделать. Я смотрел в Интернете, и из того, что я вижу на форумах и в объяснениях, я не думаю, что я что далеко, он просто не скомпилируется.
template<class T>
class Table
{
public:
...
vector<shared_ptr<vector<T>>>::iterator GetRowIterator();
//vector<shared_ptr<vector<CellValueType> > >::const_iterator GetRowIterator();
...
protected:
vector<shared_ptr<vector<CellValueType> > > data; //outside vector is rows, inside vector is columns
...
};
vector<shared_ptr<vector<T> > >::const_iterator Table<T>::GetRowIterator()
{
return data.begin();
}
Я получаю следующие ошибки:
error C2146: syntax error : missing ';' before identifier 'GetRowIterator'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
Edit:
Изменены концевые угловые скобки, чтобы они не были так близко друг к другу - та же ошибка.
Есть мысли, почему это происходит?
Как всегда, спасибо за совет / помощь заранее!