Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1647018
  • 博文数量: 268
  • 博客积分: 8708
  • 博客等级: 中将
  • 技术积分: 3764
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-06 15:58
文章分类

全部博文(268)

文章存档

2014年(1)

2013年(15)

2012年(23)

2011年(60)

2010年(51)

2009年(12)

2008年(59)

2007年(47)

C++

分类: C/C++

2008-06-24 14:49:34

基类指针为什么可以指向派生类,而派生类指针不可以指向基类??

对于基类man, 派生类child有这样的关系:
child is a man , but man is not a child.
派生类指针指向基类,等于告诉编译器,man is a child,和事实是矛盾的,所以编译器不允许.

“派生类可以初始化基类的引用”是什么意思?

就是说派生类指针指向基类,但是它只能访问基类中的成员,而它自身成员不能访问;同样当给一个函数传递一个派生类指针是,也可一传递一个基类指针,但是要注意指针所含数据的成员范围!

.纯虚函数是作为面向对象程序设计的基础的.
比如:
void Fun(A *a)
{
a->.....//通过a调用虚函数
}
当传递不同的A的子类时,里面a->....调用的方法也不一样,这即为“多态”。

2.派生类构造前需要先构造父类,所以需要调用父类的构造函数。
且T(a,b,n)属于初始化列表.(即先于自己的构造函数体执行之前执行)

构造函数的调用顺序是从父类到子类;而析构函数则是从子类到父类

阅读(1143) | 评论(0) | 转发(0) |
0

上一篇:VisualSVN-Server

下一篇:SQLite简单教程

给主人留下些什么吧!~~