看到primer第十五章里面的一个查询的程序想把它实现出来。书上没有给出全部的代码,只是把关键的几个类以及成员函数的代码写了出来,书后面的题目也有叫我们实现它的功能。
书里面只提到了我们还需要实现TextQuery::size函数。然后就写了一个,再把main里面的东西改改就调试了。一开始编译没有问题,但一运行就会跳出来bug,在程序的一开头就崩溃了。后来在网上找了一份答案,对照了看了一下,是关于对Query对象执行=号的操作没有重载,是它不能运行。要添加这样的函数代码:

inline Query& Query::operator=(const Query &rhs)
{
        
++*rhs.use;
        decr_use();
        q
=rhs.q;
        use
=rhs.use;
        
return *this;
}

//因为main中有这么一句
/*Query q = Query("fiery") & Query("bird") |Query("wind"); */
这样就没什么问题了。