昨天写了段简单链表的代码,编译总是出错,后来几经查找,终于发现了是const修饰了链表对象的引用,但在调用此引用对象的函数时忘记加const,就如侯捷老师说的那样,const object只能调用const函数。

template<class T>
void Linearlist<T>::output(ostream& out)const
{
for (int i = 0; i < Size; i++)
out << p[i] << endl;
}
template<class T>
ostream& operator<<(ostream& out,const Linearlist<T>& L)
{
L.output(out);
return out;
}
本文探讨了在C++中,如何正确地在链表模板类中使用const修饰符,特别是在重载输出函数和运算符重载时。作者分享了关于const对象只能调用const成员函数的经验,以及修复编译错误的解决方案。

被折叠的 条评论
为什么被折叠?



