我想重载流插入操作符,所以我可以打印std :: vector到std :: cout,但我遇到了语法问题。如何用模板重载流插入操作符?
这是我的尝试:
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;
};
,我想用这样的:
std::vector<float> v(3, 1.f);
std::cout << v;
什么是那种操作符重载的语法是否正确?
适用于我......除了显而易见的'','''而不是'',' – Kos 2010-11-20 09:41:38