关于C++ primer 4上面的一个文本查询程序!

来源:百度知道 编辑:UC知道 时间:2024/07/04 04:37:43
C++ primer 第四版上,在第10章有个文本查询程序,请各位大虾,自己动手写出来了的,或者利用书上的代码段组合在一起达到了效果的,回一个给小弟哈!!小弟感激不敬!!!
不是懒哈,是小弟花了两个小时一边打题,一边思考,可是到后面运行的时候就有很多问题了。小弟学C++不久,很多地方不知道如何处理,想请大家慷慨解囊,然后我好对比一下,看自己错在什么地方。

//有几个函数是前面几章写过的,但是本章没贴出来
//比如 open_file(),make_plural(),我把open_fie()改成infile.open()了,已经g++测试通过

#include <iostream>
#include <string>
#include <vector>
#include <map>
#include <set>
#include <fstream>
#include <sstream>

using namespace std;

class TextQuery {
public:
typedef vector<string>::size_type line_no;
void read_file(ifstream &is){
store_file(is);
build_map();
}

set<line_no> run_query(const string&) const;

string text_line(line_no) const;

line_no size() const {
return lines_of_text.size();
}

private:
void store_file(ifstream&);
void build_map();
vector<string> lines_of_text;
map<string,set<line_no> > word_map;
};

void TextQuery::store_file(ifstream &is)
{
string line;
while(get