| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 605 人关注过本帖
标题:box *p=new box1 ; 错了吗?请教……
只看楼主 加入收藏
tianxiao110
Rank: 1
等 级:新手上路
帖 子:63
专家分:1
注 册:2010-7-23
结帖率:83.33%
收藏
已结贴  问题点数:10 回复次数:6 
box *p=new box1 ; 错了吗?请教……
#include<iostream>
using namespace std;
class  box
{
       public:
       box(int x,int y,int z)
       {
               chang=x;
               kuan=y;
               gao=z;
       }
       virtual void show ()
       {
            cout<<chang<<"  "<<kuan<<"  "<<gao<<endl;
       }
       virtual ~box()
       {
             cout<<"基类清理"<<endl;
       }      
      
       protected:
       int chang;
       int kuan;
       int gao;
};
class box1:public box
{
      public:
      box1(int x,int y,int z,int u):box(x,y,z)
      {
            color=u;
      }
      virtual void show()
      {
           cout<<chang<<"  "<<kuan<<"  "<<gao<<"  "<<color<<endl;
      }
      virtual ~box1()
      {
              cout<<"派生类清理"<<endl;
      }        
      protected:
      int color;
};

int main()
{
    box *p=new box1;  //提示这里错了         
    delete p;
    system("pause");
    return(0);
}
搜索更多相关主题的帖子: new box 
2010-07-31 10:58
mxs810
Rank: 9Rank: 9Rank: 9
来 自:火星
等 级:贵宾
威 望:16
帖 子:234
专家分:1122
注 册:2006-10-19
收藏
得分:4 
  box *p=new box1;  //提示这里错了  

要么box *p=new box;
要么box1 *p=new box1;  
不知道你要的那种结果呢?

授人以鱼不如授人以渔
2010-07-31 11:07
东海一鱼
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:48
帖 子:757
专家分:4760
注 册:2009-8-10
收藏
得分:6 
box1(int x,int y,int z,int u):box(x,y,z);
你没有定义box1()这样无参的构造函数。

举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2010-07-31 11:20
tianxiao110
Rank: 1
等 级:新手上路
帖 子:63
专家分:1
注 册:2010-7-23
收藏
得分:0 
回复 2楼 mxs810
我的意思是:用基类的指针指向派生类对象,这个应该没问题吧?
2010-07-31 11:21
tianxiao110
Rank: 1
等 级:新手上路
帖 子:63
专家分:1
注 册:2010-7-23
收藏
得分:0 
回复 3楼 东海一鱼
谢谢你,问题解决了……
2010-07-31 11:24
东海一鱼
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:48
帖 子:757
专家分:4760
注 册:2009-8-10
收藏
得分:0 
用基类的指针指向派生类对象,没有任何问题。反过来就要出问题。
就是“白马是马,马不一定白马”的概念。
收到的鲜花
  • mxs8102010-07-31 11:36 送鲜花  3朵   附言:精辟

举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2010-07-31 11:31
tianxiao110
Rank: 1
等 级:新手上路
帖 子:63
专家分:1
注 册:2010-7-23
收藏
得分:0 
回复 6楼 东海一鱼
呵呵  ,谢谢
2010-07-31 11:33
快速回复:box *p=new box1 ; 错了吗?请教……
数据加载中...
 
   



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

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