CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

关于面向对象的思想(继承)!急...

楼主mark888(Mark)2005-01-08 23:45:03 在 C/C++ / C++ 语言 提问

以下是我定义的类...  
   
  class   A  
  {  
        protected:  
        virtual   void   sum()   =   0;     //只作内部使用  
        public:  
        //..  
  }  
   
  class   B:public   A  
  {  
  (1)private:  
  void   sum();  
  (2)protected:  
  void   sum();  
  }  
   
  请问我在class   B中实现sum()方法...请问方法(1)对   还是方法(2)对??  
   
  我试过了...两种方法都可以...但我不明??请高手指教!!!  
   
  说详细些... 问题点数:20、回复次数:8Top

1 楼iicup(双杯献酒)回复于 2005-01-09 00:09:04 得分 5

都可以。  
  因为虚函数机制是和public/protected/private无关的。Top

2 楼zhangfjj(小张)回复于 2005-01-09 00:09:51 得分 5

姑且不论为什么,  
  问题你这种纯虚函数定义为protected的方式与抽象类的应用不符。抽象类的意义在于保证进入继承层次的各个类都具有纯虚函数所要求的行为。Top

3 楼Kshape(C/C++初学者~~~~)回复于 2005-01-09 10:02:45 得分 5

protected:  
        virtual   void   sum()   =   0;  
   
  同意楼上说的,这里不好Top

4 楼truewill(无处不在)回复于 2005-01-09 10:11:10 得分 5

不同意楼上的  
   
  纯虚函数定义为protected是完全有意义的  
   
  这样只是为了给另一个自己类的public函数调用而已,留一个借口给子类  
   
  至于继承类的public/protected/private只是修改函数的访问方式而已Top

5 楼mark888(Mark)回复于 2005-01-09 10:21:18 得分 0

楼上truewill(无处不在)   正讲出我的用意...  
   
  如果我定义为public.     而我的派生类的接口根本不需要void   sum()   ;  
   
  我只是为了以后的派生类中的成员函数要用到void   sum()    
   
  如果兄弟们觉得我不对...而有更好的方法请讲出...Top

6 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2005-01-09 14:27:43 得分 0

protected使只有子类能访问Top

7 楼greenteanet(扎扎实实打基础,保持一颗平常心。)回复于 2005-01-09 14:40:22 得分 0

呵呵,看你怎么用你的基类.你这样子直接叫我们说的话,好难回答.Top

8 楼mark888(Mark)回复于 2005-01-09 14:52:49 得分 0

其实我的用意很简单,每个派生类都必须重构抽象类中void   sum()   ,派生类中的方法  
   
  void   sum()   只作本类使用,不作类的接口...我这样使用有问题不??有问题请指出,  
   
  即...我在类B中...应该使用方法(1)     还是方法(2)     还是有更好的方法Top

相关问题

  • 面向对象继承的问题
  • 面向对象的思想,迷惑了...
  • 急需C#面向对象知识
  • ***面向对象思想在实际中的应用:我想从多继承的派生类中截取一个基类却失败了!(在线等待)
  • 都谁在用面向对象的PHP,关于继承!!
  • Flash的面向对象,构造函数与继承
  • 关于面向对象方面中继承的一些问题
  • 浅谈面向对象 C++ 编程思想(VC++)
  • 关于面向对象编程思想!!各位大侠请进!!
  • asp.net与面向对象思想的结合

关键词

  • 函数
  • 类
  • 继承
  • 方法
  • 定义
  • 抽象
  • 纯虚函数
  • 派生类
  • protected
  • 使用

得分解答快速导航

  • 帖主:mark888
  • iicup
  • zhangfjj
  • Kshape
  • truewill

相关链接

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

广告也精彩

反馈

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