c++ primer 第十二章的文本查询程序,心里有些疑问

c++ primer 第十二章的文本查询程序,心里有些疑问

ostream& print(ostream& os, const QueryResult qr) {
    //qr.lines 是指向set<line_no>的指针,这个set保存的是出现过的行号;
    //假设第5行出现了它两次,那这个set只会保存一次这个第5行;
    os << qr.sought << " occurs " << qr.lines->size() << " "
        << make_plural(qr.lines->size(), "tiem", "s") << endl;
    for (auto num : *(qr.lines))
        os << "\t(line" << num + 1 << ")"
        << *(qr.file->begin()+num) << endl;
    return os;
}

在这个函数中,是输出 查找的单词,查找的单词出现的次数,和出现它的行的内容。

其中,它的次数,是用 qr.lines->size();来表示

假设第3行,有一个单词出现了2此,那这个set这里面也只会保存这个3(第3行)一次,那最后输出的时候,打印出来的次数,不就跟实际出现的次数不一样了吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值