Какой рекомендуемый способ перегрузить оператор потока вывода? Следующее может not сделать. Ожидается, что компиляция завершится неудачей, если оператор < не определено для типа T.
template < class T >
inline std::ostream& operator << (std::ostream& os, const std::vector<T>& v)
{
os << "[";
for (std::vector<T>::const_iterator ii = v.begin(); ii != v.end(); ++ii)
{
os << " " << *ii;
}
os << " ]";
return os;
}
EDIT: он компилируется, проблема не связана и находится в пространстве имен. Спасибо за помощь.