我想使用copy()打印出类型为T的容器的内容。我试过:
template<typename T>
void print_con( const T& con, const string& sep = ", ", const string& ms = "" ) {
cout << ms << endl;
copy( con.begin(), con.end(), ostream_iterator<?>( cout, sep ) );
}
我应该更换什么?与?
谢谢,
陈
答案 0 :(得分:5)
您可以将类型设置为
类型typename T::value_type
在这种情况下,我相信你想要的是
copy( con.begin(), con.end(), ostream_iterator<typename T::value_type>( cout, sep.c_str() ) );
希望这有帮助!