C# 与2个以上班级的一般互动
所以还有很多东西要学 我有三个独立的课程,分别是饮料、库存和平衡 这些类相互关联,只有当你有足够的余额并且仍然有供应时,你才能订购饮料 用2个类写出来比较容易,但用3个类我不知道这些类是如何交互的。。。C# 与2个以上班级的一般互动,c#,c++,qt,C#,C++,Qt,所以还有很多东西要学 我有三个独立的课程,分别是饮料、库存和平衡 这些类相互关联,只有当你有足够的余额并且仍然有供应时,你才能订购饮料 用2个类写出来比较容易,但用3个类我不知道这些类是如何交互的。。。 有人有什么想法吗?类似的想法可能是: public interface IOrder { bool CanOrder(); bool Order(); } public class Beverage : IOrder { Stock _stock = null;
有人有什么想法吗?类似的想法可能是:
public interface IOrder
{
bool CanOrder();
bool Order();
}
public class Beverage : IOrder
{
Stock _stock = null;
Balance _balance = null;
//In order to be able to construct Beverage, you HAVE TO
//pass Stock and Balance
public Beverage(Stock stock, Balance balance) {
_stock = stock;
_balance = balance;
}
//interface implementation
public void Order () {
if(!CanOrder())
return;
//make order
}
//interface implementation
public bool CanOrder() {
//check here against _stock and _balance
//if can order
}
}
有很多未知数,太多了,无法给出高质量的答案,所以这个问题有点模糊。试着举一个你遇到问题的小例子,然后把它贴出来。有数百万种方式来进行交互。这是C还是C++问题?qt是如何发挥作用的呢。你想要C++还是C的解决方案?你已经开始了;您已经识别了名词,名词往往对应于类。在设计课程之前,有两个问题需要回答。首先,在这些名词中,有多个实例有什么意义?很明显,你可以喝两种饮料。你能要两个余额吗?两支股票?逻辑上只能有一个对象的对象可能很难建模,所以首先确定这些对象。第二,适用于名词的动词是什么,特别是与名词相关的动词是什么?汽车有轮子,但在路上行驶;这些都是非常不同的动词。现在回答这样一个模糊的问题真是一件勇敢的事情。投赞成票,谢谢蒂格兰!作为一个傻瓜,我花了很长时间才弄明白;所以回复晚了,但是你的帖子很有用!