摘要: 在 C++ 里,有一种特殊的友情关系 -- 友元关系。 不多说,上图: 好吧,刚刚那张图如果没看过,那你就”奥特曼”啦~ 不过,初学C++,没听说过友元关系那倒是比较正常。。。。。。 首先嘛,任何事物的存在都会有它存在的理由! 在编程中我们通过 public, protected 和 private 阅读全文
posted @ 2019-01-15 14:27 耐烦不急 阅读(609) 评论(0) 推荐(0) 编辑
摘要: 覆盖方法: 通过之前的学习,我们已经知道了如何通过创建新的子类来重用现有的代码(继承)。 虽然这个方案可以让我们轻松解决许多现实世界里的问题,但在某些场合,却又显得不够用。 例如当我们需要在基类里提供一个通用的函数,但在它的某个子类里需要修改这个方法的实现,在 C++ 里,覆盖(overriding 阅读全文
posted @ 2019-01-15 13:36 耐烦不急 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 新手需要注意的地方 初学者常犯的一种错误是用一个毫不相干的类去派生另一个毫不相干的子类。 例如就有人在 Human 类里有一个 swim() 方法,当这哥们在设计一条鱼的时候,就用 Human 去派生一个 Fish 类。 从技术角度讲,这麽做没有问题,但像这样的运用继承机制实在太牵强附会了。。。作为 阅读全文
posted @ 2019-01-15 13:04 耐烦不急 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 正如此前所讲解的,C++支持程序员自己写出将创建或销毁一个对象时自动调用的方法,也就是构造器和析构器。 在没有继承机制的情况下,我们很容易理解这些方法在创建或销毁一个对象的时候被调用。但是一旦使用了继承机制,构造器和析构器就变得有点复杂了。 比如基类有个构造器,如Animal(),它将在创造Pig 阅读全文
posted @ 2019-01-15 12:15 耐烦不急 阅读(293) 评论(0) 推荐(0) 编辑