摘要: 小雪,望文生义,表示降雪开始的时间和程度。雪是寒冷天气的产物。民间曾有:十月立冬小雪涨,斗指己,斯时天已积阴,寒未深而雪未大,故名小雪。这时的黄河以北地区已到了北风吹,雪花飘的孟冬,此时我国北方地区会出现初雪,虽雪量有限,但还是提示我们到了御寒保暖的季节。小雪节气的前后,天气时常是阴冷晦暗的,此时人们的心情也会受其影响,特别是那些患有抑郁症的朋友更容易加重病情,所以在这个节气里我要着... 阅读全文
posted @ 2008-11-21 17:00 巩固 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 这几天写的程序应用到多继承。 以前对多继承的概念非常清晰,可是很久没用就有点模糊了。重新研究一下,“刷新”下记忆。 假设我们有下面的代码: #include class A { private: char data; public: A(){data = 'A';} virtual void Show(){printf("A\n");}; vir... 阅读全文
posted @ 2008-11-21 16:53 巩固 阅读(269) 评论(0) 推荐(0) 编辑
摘要: C++多继承 多继承可以看作是单继承的扩展。所谓多继承是指派生类具有多个基类,派生类与每个基类之间的关系仍可看作是一个单继承。 多继承下派生类的定义格式如下: class :,,… { }; 其中,,,…是三种继承方式:public、private、protected之一。例如: class A ... 阅读全文
posted @ 2008-11-21 16:25 巩固 阅读(1075) 评论(0) 推荐(0) 编辑
摘要: 在过去的学习中,我们始终接触的单个类的继承,但是在现实生活中,一些新事物往往会拥有两个或者两个以上事物的属性,为了解决这个问题,C++引入了多重继承的概念,C++允许为一个派生类指定多个基类,这样的继承结构被称做多重继承。 举个例子,交通工具类可以派生出汽车和船两个子类,但拥有汽车和船共同特性水陆两用汽车就必须继承来自汽车类与船类的共同属性。 由此我们不难想出如下的图例与代码: 当... 阅读全文
posted @ 2008-11-21 15:01 巩固 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 拷贝构造函数主要在以下三种情况下起初始化作用: 1. 在声明语句中用一个对象初始化另一个对象; 2. 将一个对象作为参数按值调用方式传递给另一个对象时生成对象副本; 3. 生成一个临时对象作为函数的返回结果。 那么接着就看一下在这三种情况下拷贝构造函数分别在什么时候调用,以及如果有临时对象的话,在什么时候析构。先假定有一个类FOO,在构造函数中会输出“Constructing.”,在拷贝构造函数中... 阅读全文
posted @ 2008-11-21 11:45 巩固 阅读(2061) 评论(0) 推荐(1) 编辑
摘要: 拷贝构造函数使用的时机: 推荐:内存管理 成为C++高手必然的磨练 当用一个已初始化过了的自定义类类型对象去初始化另一个新构造的对象的时候,拷贝构造函数就会被自动调用。也就是说,当类的对象需要拷贝时,拷贝构造函数将会被调用。以下情况都会调用拷贝构造函数: 一个对象以值传递的方式传入函数体 一个对象以值传递的方式从函数返回 一个对象需要通过另外一个对象... 阅读全文
posted @ 2008-11-21 11:26 巩固 阅读(134) 评论(0) 推荐(0) 编辑
摘要: C++拷贝构造函数的几个细节 关键字: c++ 拷贝构造函数是C++最基础的概念之一,大家自认为对拷贝构造函数了解么?请大家先回答一下三个问题: 1. 以下函数哪个是拷贝构造函数,为什么? X::X(const X&); X::X(X); X::X(X&, int a=1); X::X(X&, int a=1, b=2); 2.... 阅读全文
posted @ 2008-11-21 11:07 巩固 阅读(369) 评论(0) 推荐(1) 编辑
摘要: 虽然对象复制看上去很简单,然而如果你没有对其正确理解,可能会出现一些严重问题。默认情况下,复制对象会导致相应的所有成员的复制。如果你只有实例成员,这看上去是相当不错的。但是如果你的类中含有指向在堆中分配的对象时,情况会怎样呢?考虑下面的代码片断: #include #include class Pe... 阅读全文
posted @ 2008-11-21 10:36 巩固 阅读(278) 评论(0) 推荐(0) 编辑