永发信息网

C++:设计一个堆栈的类模板Stack,在模板中用类型参数T表示栈中存放的数据,用非类型参数MAX

答案:1  悬赏:0  手机版
解决时间 2021-03-21 11:28
C++:设计一个堆栈的类模板Stack,在模板中用类型参数T表示栈中存放的数据,用非类型参数MAX
最佳答案
1、任何容器都只能放相同的数据类型;2、如果数据类型不相同,只能想个法让这些数据类型由不同变得相同;3、一般的法就是继承,定义一个父类,其它数据类型继承这个父类。上代码:enumsubClassType{typeB,typeC,};classClassA{public:subClassTypetype;};classClassB:publicClassA{inta;public:ClassB(){ClassA::type=typeB;a=10;}intfunOut(){returna;}};classClassC:publicClassA{floata;public:ClassC(){ClassA::type=typeC;a=1.1;}floatfunOut(){returna;}};voidfun(){ClassB*b=newClassB();ClassC*c=newClassC();ClassA*array[]={b,c};//把子类的对象赋值给父类的指针,然后保存在数组里,栈也是一样的。for(inti=0;itype==typeB)//判断类型,然后转换成子类指针,就能调用子类的成员了。{printf("a=%d",((ClassB*)pA)->funOut());}elseif(pA->type==typeC){printf("a=%f",((ClassC*)pA)->funOut());}}}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
分手后为什么不拉黑
停车场(历城路)(威海路40附近停车场)地址好找
这是拖拉机的水田胎,也叫高花胎,使用一年后
蒙古人酒庄在什么地方啊,我要过去处理事情
要配制一定质量分数的NaOH溶液,正确的操作步
北京站东街怎么走?
如何发表lol视屏
汽车前轮一个旧一个新同品牌的轮胎可以吗?
春雨黑卢卡面膜怎么辨别真假,在淘宝买的,用
飞亚达手表什么档次
2013年9月3日,全球最大的电脑软件商微软宣布
陆地面积最大的半球是哪个
龙珠OL任务守护巨树怎么调查
读《西游记》的感受
单选题下列关于人性别遗传的描述不正确的是A.
推荐资讯
暖通专业考研与工作
我的脸是长脸,又像瓜子脸,我想把头发扎起夹,
手机充电插口进了点水,现在手机可以使用,但
单选题已知四台显微镜的目镜和物镜的放大倍数
不动房产证多久出证
百分百电动车配件行我想知道这个在什么地方
中国移动通信记和通讯指定专营店怎么去啊,有
At that time ,his country was Japan, so h
北京现代车依兰特点火线圈价格多少
建设经济管理专业怎么样?
火影世界属性怎么提升
根据语境,在横线上填入古诗词名句。(本题有
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?