刷C++ Primer Plus第六版的时候,看到多态这一块的时候发现一个问题:
“如果Brass::ViewAcct()被声明为虚的,则在任何情况下都要调用Brass::ViewAcct()。”第二个横线的这句话,与前面关于虚函数的介绍是相反的(矛盾),于是翻回前面493页去看。
发现这里关于关键字 virtual 解释的很清晰,加上两个高亮的例子。“如果没有关键字 virtual ,程序将根据引用类型或指针类型选择方法;如果使用了关键字 virtual ,程序将根据引用或指向的对象的类型选择方法。” 困扰了半天,于是乎问了老师,被告知这里是错了,应该是“如果Brass::ViewAcct()没有被声明为虚的,则在任何情况下都要调用Brass::ViewAcct()。”