C++ primer(第五版) 练习 6.33
题目:编写一个递归函数,输出vector对象的内容
答:
#include <iostream>
#include <vector>
#include <string>
using std::cout;
using std::cin;
using std::endl;
using std::string;
using std::vector;
void print(const vector<string> &s)
{
static vector<string>::size_type i = 0; //局部静态变量,函数结束值依然有效(否则程序会死循环挂掉……)
if (i < s.size())
{
cout << s[i++] << " ";
print(s);
}
}
int main()
{
vector<string> str = { "hello", "hi", "see", "you" };
print(str);
cout << endl;
return 0;
}
执行结果: