社区
C语言
帖子详情
请教一个关于类的设计的问题
paddy102
2003-12-01 06:20:19
我正学到类的设计,概念上已经理解了类,但在具体设计类时,对到底是在类中申明函数,还是把这个函数放在主程序中申明和实现一直捉摸不定,成员数据也是一样。 哪位朋友可以点解一下吗?
比如我想在计算机上模拟城市街头的饮料专售机,它可以提供可口可乐、百事可乐、非常可乐、娃哈哈、雪碧等等,而且我是把专售机分成两部分来设计,即收银和分送饮料。在这种情况下,应该怎样来设计这两个类呢?
...全文
59
6
打赏
收藏
请教一个关于类的设计的问题
我正学到类的设计,概念上已经理解了类,但在具体设计类时,对到底是在类中申明函数,还是把这个函数放在主程序中申明和实现一直捉摸不定,成员数据也是一样。 哪位朋友可以点解一下吗? 比如我想在计算机上模拟城市街头的饮料专售机,它可以提供可口可乐、百事可乐、非常可乐、娃哈哈、雪碧等等,而且我是把专售机分成两部分来设计,即收银和分送饮料。在这种情况下,应该怎样来设计这两个类呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
paddy102
2003-12-03
打赏
举报
回复
现写一下,看怎么样
Wolf0403
2003-12-03
打赏
举报
回复
struct Drink
{
static Drink * GetDrink(unsigned _code);
static double GetPrice(const Drink * _drink);
virtual ~Drink() = 0 {}
};
struct Coke : public Drink;
struct Fanta: public Drink;
class Machine
{
public:
Drink * Select (unsigned _code, double& _price)
{
double price = Drink::GetPrice(Drink::GetDrink(_price));
if (price >= _price)
{
_price -= price; // change
return Drink::GetDrink(_code);
}
throw "Money not enough";
}
};
sttony
2003-12-01
打赏
举报
回复
似乎,将饮料独立出来比较合适。从饮料类派生出可乐,雪碧等类,将计算钱的功能放到饮料类中。
tianyxy
2003-12-01
打赏
举报
回复
可乐类(两个接口函数:收银和分送饮料) 派生可口可乐、百事可乐、非常可乐、娃哈哈、雪碧类
tianyxy
2003-12-01
打赏
举报
回复
分成收银和分送不合适吧?
liloaka
2003-12-01
打赏
举报
回复
类强调的是封装,通常数据不提供给外部调用,而是通过提供函数来访问类的数据。
所以,函数和数据都是在类中申明的。
主程序只是调用类提供的接口函数来实现操作和访问类的数据。
这里实际只有一个类,提供两个接口函数:收银和分送饮料。
至于提供的是可口可乐、百事可乐、非常可乐、娃哈哈、雪碧,那可以通过重载实现。
英文邮件礼仪:向教授
请教
学术
问题
英文邮件礼仪:向教授
请教
学术
问题
邮件主题 邮件主题(subject)不需要写自己的名字。名字是在邮件系统设置里设定好的,在发件时会替换显示实际地址,所以无需在主题里再写一遍。 [关键内容是要在主题里就写...
[全程建模]UML
设计
类
中的实现与方法数量
问题
UML
设计
类
中的实现与方法数量
问题
徐州-BFish 2013/9/13 9:36:25新手
请教
:画... 根本上解决,
一个
类
有50-60个方法,
设计
是否合理2.
类
图只是指导作用, 不必所有方法都标出来徐州-BFish2013/9/13 9:40:17谢谢这个帅哥了
java怎么
设计
接口,java如何写
一个
接口 Java新手
请教
如何写
一个
接口
Java新手,
请教
如何写
一个
接口创建接口IntStack push(int x)方法,无返回 pop()方法,返回int型 show(小编的不开心,小编的难受,小编都尽量留给了自己,小编也从不指望任何人心疼小编,为小编扛下所有。public ...
定时器翻转io口的好处_
请教
一个
STM32H7 IO 翻转速度的
问题
回复: 71
请教
一个
STM32H7 IO 翻转速度的
问题
(65536350)出0入0汤圆电梯直达发表于 2018-11-23 14:45:20|只看该作者|正序浏览|阅读模式如题,由于案子需要用到高速的IO通信,还是特殊协议的那种,担心STM32F1和STM32...
如何以面向对象的思想
设计
存在关联的实体
类
?
针对前两天在本人公司引起同事激烈讨论的话题(如何以面向对象的思想
设计
存在关联的实体
类
),我设想了
一个
虚拟的应用场景,通过翻阅各种资料、
请教
各位同事以及结合我自己的一些经验,进行了简单的
设计
。这种
设计
是我...
C语言
70,039
社区成员
243,246
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章