我需要开发一个接收"字符串列表"的库的算法.
当然我想传递一个"抽象"迭代器来将该列表的内部表示(向量,链表,映射......)与我的函数访问它分离.
这是我的方法:
template <typename ForwardIterator>
void myAlgorithm(ForwardIterator itBegin, ForwardIterator itEnd) {
for(; itBegin != itEnd ; ++itBegin) {
// Do something with *itBegin
}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,如何将容器的类型限制为字符串?或者甚至更多,是否有某种方式接受std :: strings和char*作为元素?
非常感谢.