drukowanie elementów klasy vector -przeładowany operator<<

0

Cześć,
chcę prosić o pomoc przy pisaniu przeładowanego operatora << . Ma od drukować kolejne elementy vectora. Tak wygląda jego definicja:

 friend ostream& operator<< (ostream& out, const Vector& v)
{
    if(v._size==0)
    {
        out<<v._size;
    }
    else
    {
        for(int i=0;i<v._size; i++)
        {
            out<<v[i];        //lub out<<v.at(i);
        }
    }
    return out;
}

Niestety program się nie kompiluje, błąd w linijce
'out<<v[i]; //lub out<<v.at(i);' no match for 'operator[]' in 'v[i]'
v.at(i) też nie działa.
To znaczy,że nie mogę korzystać z innych operatorów przeładowując któryś operator?
Operator[] również powinien być przeładowany?
Z góry dziękuję za pomoc

0

co to za klasa Vector? to na pewno nie jest std::vector

czemu nie uzyjesz foreach loop?
http://en.cppreference.com/w/cpp/language/range-for

0
out<<v[i];

Czymkolwiek jest owo v[i], nie ma zdefiniowanego takiego operatora <<.

1 użytkowników online, w tym zalogowanych: 0, gości: 1