#include #include #include using namespace std; template void print(const list &lst) { for (typename list::const_iterator it = lst.begin(); it != lst.end(); ++it) cout << *it << ' '; cout << endl; } int main() { string s = "abcdefg"; // 将 string 字符串转换为 list list l(s.begin(), s.end()); int size = l.size(); // 获取大小 print(l); // list 手写逆序 list::iterator it = l.begin(); // 迭代器指向第一个元素 for (int i = 0; i < size; i++) // 逆序 size 次 { it = l.insert(it, l.back()); // 将最后一个元素插入到第一个元素之前 it++; // 迭代器指向下一个元素 l.pop_back(); // 删除最后一个元素 } print(l); return 0; }