2014-10-17 50 views
-1

我有一个BuyPopcorn有一个小数参数的方法。它应该返回Popcorn转换为十进制

public Popcorn BuyPopcorn(decimal payment) 
     { 
      Popcorn popcorn = this.AddMoney(payment);  
      return popcorn; 
     } 

这是我到目前为止所。除了我收到一个错误说不能转换类型voidTheaterEngine.Popcorn.

它应该支付传递给我AddMoney方法并返回Popcorn给谁买了它的客户。我如何去转换?

这是我的AddMoney方法,以防万一需要。它不会返回任何东西。

 /// Add the money 
     /// </summary> 
     /// <param name="amountToAdd">amount added</param> 
     public void AddMoney(decimal amountToAdd) 
     { 
      this.moneyBox.AddMoney(amountToAdd); 
     } 

回答

1

很明显,AddMoney方法不会返回任何东西(void)。它需要返回一个Popcorn对象才能使您的代码正常工作,因为您无法将void指定给Popcorn引用。

AddMoney没有什么重要的(从我能告诉的),这将防止返回Popcorn。因此,您的方法可能很简单:

public Popcorn BuyPopcorn(decimal payment) 
{ 
    AddMoney(payment);  
    return new Popcorn(); 
} 
+0

是的。那就是它。我忘了创造一个新的爆米花。菜鸟错误!谢谢! – Travis 2014-10-17 23:32:21

+0

@ Travis没问题。我猜你需要做一些事情,比如检查足够的钱等,但这会让你走。乐意效劳! – BradleyDotNET 2014-10-17 23:33:30