C++primer 第六版 p248的代碼經過實際運作,有一些書上未提到的報錯。
Screen& display(ostream& os) {
do_display(os);
return *this;
}
const Screen& display(ostream& os) const {
do_display(os);
return *this;
}
Screen& do_display(ostream& os) {
os << contents;
return *this;
}
但現實報錯,
提示顯示do_display不相容的對象 const Screen,那麼說明do_display不能被常量對象所調用,那麼考慮加上一個const先點個的do_display.
加上去之後:
const Screen& do_display(ostream& os)const {
os << contents;
return *this;
}
結果顯示并不報錯了,問題解決。