免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4162 | 回复: 14

[C++] 请教一个链表的问题:就是一个链表内能不能存放两种类型的数据?(已解决) [复制链接]

论坛徽章:
0
发表于 2010-07-19 19:46 |显示全部楼层
本帖最后由 xianliang 于 2010-08-01 12:44 编辑

谢谢各位,就是用的基类引用指向派生类对象,再调用派生类对象中对基类虚函数的重定义。
----------------------------------------------------------------------------------
请教各位大哥大姐:

现在有一个问题,大体上就是有两个线形,直线和圆弧,对应地建两个类。然后想在一个链表或者别的容器里放进这两种数据类型,比如先放进一个直线、再放进一个圆弧,再放进一个直线。
目的是要把这些直线、圆弧等等遍例一下。一起放大10倍。

或者有别的方法?

论坛徽章:
59
2015年亚洲杯之约旦
日期:2015-01-27 21:27:392015年亚洲杯之日本
日期:2015-02-06 22:09:41拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015元宵节徽章
日期:2015-03-06 15:50:392015年亚洲杯之阿联酋
日期:2015-03-19 17:39:302015年亚洲杯之中国
日期:2015-03-23 18:52:23巳蛇
日期:2014-12-14 22:44:03双子座
日期:2014-12-10 21:39:16处女座
日期:2014-12-02 08:03:17天蝎座
日期:2014-07-21 19:08:47
发表于 2010-07-19 22:49 |显示全部楼层
Nothing is impossible

C++
class CShape{
public:
  virtual double zoom(double iZoom);
   class CShape *next;
};

class CShape_Line:public CShape{
   .... // the Implement of Line
};

class CShape_Circle:public CShape{
  .... // the implement of circle
};

....


C:
struct Shape{  //Not needed,but it will be understand easy if it existing.
  int type;
};

struct Shape_Line{
  int type;// =TYPE_LINE
  ....
  void *next;
};

struct Shape_Circle{
  int type; // =TYPE_CIRCLE
  ...
  void *next;
};

论坛徽章:
0
发表于 2010-07-19 22:50 |显示全部楼层
链表里的结构体中定义一个枚举常量,用来选择是直线还是扇形。

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
发表于 2010-07-19 23:33 |显示全部楼层
链表里只放数据指针和指针类型就可以了

论坛徽章:
324
射手座
日期:2013-08-23 12:04:38射手座
日期:2013-08-23 16:18:12未羊
日期:2013-08-30 14:33:15水瓶座
日期:2013-09-02 16:44:31摩羯座
日期:2013-09-25 09:33:52双子座
日期:2013-09-26 12:21:10金牛座
日期:2013-10-14 09:08:49申猴
日期:2013-10-16 13:09:43子鼠
日期:2013-10-17 23:23:19射手座
日期:2013-10-18 13:00:27金牛座
日期:2013-10-18 15:47:57午马
日期:2013-10-18 21:43:38
发表于 2010-07-20 08:20 |显示全部楼层
2楼既然用了C++,为何还把类型放到外面,而不是在对象内部呢。

链表放基类指针就可以了

论坛徽章:
59
2015年亚洲杯之约旦
日期:2015-01-27 21:27:392015年亚洲杯之日本
日期:2015-02-06 22:09:41拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015元宵节徽章
日期:2015-03-06 15:50:392015年亚洲杯之阿联酋
日期:2015-03-19 17:39:302015年亚洲杯之中国
日期:2015-03-23 18:52:23巳蛇
日期:2014-12-14 22:44:03双子座
日期:2014-12-10 21:39:16处女座
日期:2014-12-02 08:03:17天蝎座
日期:2014-07-21 19:08:47
发表于 2010-07-20 08:33 |显示全部楼层
回复 5# hellioncu


    看贴不仔细,抓起来~~~


C++后面是C++的,C后面是C的实现~~

论坛徽章:
324
射手座
日期:2013-08-23 12:04:38射手座
日期:2013-08-23 16:18:12未羊
日期:2013-08-30 14:33:15水瓶座
日期:2013-09-02 16:44:31摩羯座
日期:2013-09-25 09:33:52双子座
日期:2013-09-26 12:21:10金牛座
日期:2013-10-14 09:08:49申猴
日期:2013-10-16 13:09:43子鼠
日期:2013-10-17 23:23:19射手座
日期:2013-10-18 13:00:27金牛座
日期:2013-10-18 15:47:57午马
日期:2013-10-18 21:43:38
发表于 2010-07-20 08:40 |显示全部楼层
回复  hellioncu


    看贴不仔细,抓起来~~~


C++后面是C++的,C后面是C的实现~~
folklore 发表于 2010-07-20 08:33



    确实看错了{:3_184:}
要抓起来也太猛了吧,比党还牛

论坛徽章:
59
2015年亚洲杯之约旦
日期:2015-01-27 21:27:392015年亚洲杯之日本
日期:2015-02-06 22:09:41拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015元宵节徽章
日期:2015-03-06 15:50:392015年亚洲杯之阿联酋
日期:2015-03-19 17:39:302015年亚洲杯之中国
日期:2015-03-23 18:52:23巳蛇
日期:2014-12-14 22:44:03双子座
日期:2014-12-10 21:39:16处女座
日期:2014-12-02 08:03:17天蝎座
日期:2014-07-21 19:08:47
发表于 2010-07-20 09:00 |显示全部楼层
确实看错了
要抓起来也太猛了吧,比党还牛
hellioncu 发表于 2010-07-20 08:40



    靠,还敢不服,毙了~~

论坛徽章:
0
发表于 2010-07-20 09:37 |显示全部楼层
很黄很暴力阿{:3_203:}

论坛徽章:
0
发表于 2010-07-20 10:27 |显示全部楼层
谢谢各位,尤其是2楼的大哥。我试试。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP