Ich versuche, den Stream-Insertion-Operator zu überlasten, so kann ich std :: vector auf std :: cout drucken, aber ich habe Probleme mit der Syntax.Wie Stream-Insertion-Operator mit einer Vorlage überladen?
Dies ist, was ich versuche:
template<typename T> std::ostream & operator<<(std::ostream &os, std::vector<T> &v)
{
std::copy(v.begin(), v.end(), std::ostream_iterator<T>(os, ', '));
return os;
};
Und ich wollte es so verwenden:
std::vector<float> v(3, 1.f);
std::cout << v;
Was für diese Art von Überladen von Operatoren die korrekte Syntax ist?
Funktioniert für mich ... Außer für das offensichtliche '' '' '' '' – Kos