/*
//递归函数:输出vector对象的内容
void cout_DiGui(vector<string>::iterator beg, vector<string>::iterator end)
{
#ifndef NDEBUG
#define NDEBUG
cerr<<"vector对象的大小:"<<end-beg<<endl;
#endif
if(beg!=end)
{
cout<<*beg<<endl;
cout_DiGui(++beg, end);
}
}
练习6.47:
改写上述递归函数,使其有条件地输出与执行过程有关的信息。例如,每次调用时输出vector对象的大小。分别在打开和关闭调试器情况下编译并执行这个程序。
*/
#include "TouWenJian_6.h"
#define NDEBUG
void cout_DiGui(vector<string>::iterator beg, vector<string>::iterator end)
{
#ifndef NDEBUG
cerr<<"vector对象的大小:"<<end-beg<<endl;
#endif
if(beg!=end)
{
cout<<*beg<<endl;
cout_DiGui(++beg, end);
}
}
int main(int argc, char *argv[])
{
// for(int i=1;i<argc;++i)
// cout<<argv[i]<<endl;
vector<string> v_str;
string str;
while(cin>>str)
v_str.push_back(str);
cout_DiGui(v_str.begin(), v_str.end());
return 0;
}
C++Primer第五版第六章练习6.47
最新推荐文章于 2024-05-04 15:29:43 发布