摘要: 当派生类使用了new时,必须为派生了定义显式析构函数、复制构造函数和赋值运算符。(这里假设hasDMA类继承自baseDMA类)显式析构函数: 复制构造函数: 赋值运算符: 阅读全文
posted @ 2016-07-12 19:29 月光诗人 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 抽象基类(abstract base class,ABC)例子:圆与椭圆。建立一个基类BaseEllipse,建立它的恋歌继承了Ellipse和Circle。ellipse.h ellipse.cpp 测试类 输出效果: 阅读全文
posted @ 2016-07-12 18:58 月光诗人 阅读(601) 评论(0) 推荐(0) 编辑
摘要: 使用virtual:如果方法是通过引用类型或指针而不是对象调用的,它将确定使用哪一种方法。如果没有使用关键字irtual,程序将根据引用类型或指针类型选择方法;如果使用了irtual,程序将根据引用或指针指向的对象的类型来选择方法。对于一个函数ViewAcct()来说,如果ViewAcct()不是虚 阅读全文
posted @ 2016-07-12 18:10 月光诗人 阅读(1962) 评论(0) 推荐(0) 编辑
摘要: 本章介绍了定义和使用类的许多重要方面。其中的一些方面是非常微妙甚至很难理解的概念。如果其中的某些概念对于您来说过于复杂,也不用害怕——这些问题对于大多数C++的初学者来说都是很难的。通常,对于诸如复制构造函数等概念,都是在由于忽略它们而遇到了麻烦之后逐步理解的。本章介绍的一些内容乍看起来难以理解,但 阅读全文
posted @ 2016-07-12 15:38 月光诗人 阅读(286) 评论(0) 推荐(0) 编辑
摘要: Heather银行打算在Food Heap超市开设一个自动柜员机(ATM)。Food Heap超市的管理者担心排队使用ATM的人流会干扰超市的交通,希望限制排队等待的人数。Heather银行希望对顾客排队等待的事件进行估测。要编写一个程序来模拟这种情况,让超市的管理者可以了解ATM可能招骋的影响。对 阅读全文
posted @ 2016-07-12 11:16 月光诗人 阅读(737) 评论(0) 推荐(0) 编辑
摘要: 在具体的操作之前,首先需要安装一些必要的软件。ubuntu下默认安装了gcc,不过缺少必要的Header file,可以在命令行中输入下面的指令安装build-essential套件:sudo apt-get install build-essential使用GTK+2.0需要安装GTK开发套件,在 阅读全文
posted @ 2016-07-12 10:32 月光诗人 阅读(969) 评论(0) 推荐(0) 编辑
摘要: code::blocks编译运行C++程序(F9)默认出现的运行串口在有鼠标的情况下进行粘贴还是很方便的,只要按下鼠标滑轮,位与剪切板中的数据就能粘贴到运行串口中。但是对于用笔记本而且没有鼠标地童鞋这就比较麻烦了。这个时候可以将code::blocks默认的运行窗口改成Linux的命令行窗口。可以在 阅读全文
posted @ 2016-07-12 10:17 月光诗人 阅读(468) 评论(0) 推荐(0) 编辑
摘要: 如果Classy是一个累,而mem1、mem2、mem3都是这个类的数据称源,则类构造函数可以使用如下的语法来初始化数据成员:Classy::Classy(int n, int m) : mem1(n), mem2(0), mem3(n*m + 2){//...}上述代码将mem1初始化为n,将me 阅读全文
posted @ 2016-07-12 09:11 月光诗人 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 12.6.1 重载<<运算符要重新定义<<运算符,以便将它和cout一起用来显示对象的内容,请定义下面的友元运算符函数:ostream & operator<<(ostream & os, const c_name & obj){ os << ...; // display object conte 阅读全文
posted @ 2016-07-12 08:08 月光诗人 阅读(267) 评论(0) 推荐(0) 编辑