使用了一个函数模板,用于输出对象,但编译错误。
程序代码:
template<class object> void show_ar(object::iterator a,object::iterator b) { object::iterator p = a, p1 = b; for (; p != p1; ++p) cout << *p << ' '; } int main() { using namespace std; vector<int> arint(4,3); vector<string> arstr(4, "xiaogang"); show_ar<vector<int>>(arint.begin(),arint.end());//为什么此处编译无法通过呢?请讲解一下,谢了。 cout << endl; show_ar<vector<string>>(arstr.begin(), arstr.end()); cout << endl; system("pause"); return 0; }