标题:最近在准备二级考试,看到一题来问问~
只看楼主
小小小小小黄
Rank: 1
等 级:新手上路
帖 子:28
专家分:4
注 册:2012-12-10
结帖率:44.44%
 问题点数:0 回复次数:2 
最近在准备二级考试,看到一题来问问~
代码不难理解,主要是拓展点东西问问。

#include"iostream.h"
class A
{
    public:
        A(){cout<<"CLASS A"<<endl;}
        ~A(){}
};
class B:public A
{
    public:
        B(){cout<<"CLASS B"<<endl;}
        ~B(){}
};

void main()
{
    A *p;
    p=new B;
    B *q;
    q=new B;
}

执行结果是
CLASS A
CLASS B
CLASS A
CLASS B


这个结果不难想通,关键是想问,

pq两个指针其实指向的都是堆中保存的B类的对象,
在声明A类指针pq的时候其实并没有在堆内存中分配空间,
是不是这题可以这么理解。
在声明A类指针pq的时候没有执行class A 的构造函数。

另外想问下,有没有什么书是专门讲堆栈内存的,老师说是编译原理对么,

顺便求推荐本讲数据结构的书,
已经学过这门课了,无奈睡得太多,勉勉强强及格了,
现在自己想看看,求推荐,






大学生感谢各位大神了~
搜索更多相关主题的帖子: include public 空间 拓展 
2014-03-04 13:18
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
得分:0 
1,是编译原理
2,网上搜很多

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2014-03-04 14:24
yuccn
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:何方
等 级:版主
威 望:167
帖 子:6809
专家分:42393
注 册:2010-12-16
得分:0 
林锐的 高质量c&c++

我行我乐
我的博客:
http://blog.yuccn. net
2014-03-04 20:37



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-427988-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.092450 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved