CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

请问一下虚类的定义~

楼主dc128()2004-09-03 21:37:56 在 C/C++ / C++ 语言 提问

请问虚类是如何定义的呢?这样定义对吗?  
  virtual   class   A  
  {  
                  public:  
                                  ........  
  }  
  若不对,望指教~~,在虚类里能定义实函数吗?如果能,那么和非虚类有什么不同?因为在非虚类中就能定义虚函数 问题点数:20、回复次数:9Top

1 楼xteaj(半桶水)回复于 2004-09-03 21:44:06 得分 5

错了,虚类就是不能有实例的类,含有纯虚函数的类。  
  class   A  
  {  
        public:  
            void   print()   =   0;//纯虚函数  
  ....  
  };Top

2 楼xteaj(半桶水)回复于 2004-09-03 21:44:55 得分 0

能定义实函数,只是因为有纯虚函数,所以不能实例化。Top

3 楼dengyl(龙)回复于 2004-09-03 22:02:52 得分 5

虚类带有纯虚函数,一般是做为基类,为从它派生的类指定接口。也就是说,声明了纯虚函数的类就是虚类。(啊,我都没注意过什么虚类,因为它们一般是作为基类,称为虚基类。)  
   
  虚基类中可以定义一般的成员函数。但是请注意,我们不能定义出虚类的对象。  
   
  请注意纯虚函数和虚函数的关系!纯虚函数是用于指定接口,可以不提供实现,而由其派生类重载来提供实现。(当然,也可以为提供纯虚函数一个实现,作为缺省动作。)  
   
  而一般的虚函数要提供实现。  
  Top

4 楼dc128()回复于 2004-09-03 22:07:58 得分 0

我在我的类里定义了4个纯虚函数,不提供实现,有派生类实现,也定义了一个实函数,在类里对其进行了实现,那么,请问我这个类是不是虚类呢?按照楼上的指点,我定义的这个类可以算实虚基类是吧?Top

5 楼xteaj(半桶水)回复于 2004-09-03 22:16:06 得分 0

OKTop

6 楼UPCC(杂食动物)回复于 2004-09-03 22:28:38 得分 5

class   a  
  {  
  virtual   void   t(){};  
  }  
  这是一个虚类  
  class   b  
  {  
  virtual   void   t()=0;  
  }  
  这是一个抽象类。  
  两者都存在用virtual修饰符修饰的函数。这前这的函数还要定义,因为虚类还存在实例。  
  而后者不必定义了,当然也不可以实例化,功能是给子类们定义一个界面。Top

7 楼dc128()回复于 2004-09-04 13:26:31 得分 0

请问,虚类或抽象类里能不能有实函数?Top

8 楼hcj2002(流浪者·躬自厚而薄责于人 )回复于 2004-09-04 13:44:02 得分 2

当然有可以Top

9 楼willko(珂http://www.willko.cn)回复于 2004-09-04 13:55:54 得分 3

虚基类  
  class   a  
  {  
  };  
   
  class   b   :   virtual   public   a  
  {  
  };Top

相关问题

  • 类定义中定义的函数可以不实现吗(非纯虚函数)????
  • 请教一下,下面的类型定义是什么?
  • 请帮我解释一下关于定义新类的问题
  • 类定义基础问题,请大家帮我看一下
  • 请教一下.为什么这样定义类库不行呢?
  • 类定义问题
  • ??类定义与__gc??
  • string类的定义
  • 奇怪的纯虚基类未定义问题
  • ”用户定义类型未定义“

关键词

  • 函数
  • virtual
  • 类
  • 定义
  • 纯虚函数
  • 请问
  • 实例
  • 派生
  • 实现
  • 虚函数

得分解答快速导航

  • 帖主:dc128
  • xteaj
  • dengyl
  • UPCC
  • hcj2002
  • willko

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo