我正在制作一个简单的ATM,并且遇到了一个问题。无法修改列表
应用:http://pastebin.com/Uk1q5vpC
操纵指令:http://pastebin.com/eG8XWM4w
帐户:
class Konto
{
public Bankkort bankkort;
private string namn;
public string losenord;
public int pengar;
public Kontoutdrag ku = new Kontoutdrag();
public Konto(Bankkort bk, string n, string l, int p)
{
bankkort = bk;
namn = n;
losenord = l;
pengar = p;
}
public override string ToString()
{
return namn;
}
}
提款:
class Uttagning : Kommando
{
public void Hantera(Konto konto)
{
Console.WriteLine("Du har " + konto.pengar + " kr. Hur mycket vill du ta ut?");
string inmatning = Console.ReadLine();
konto.pengar -= int.Parse(inmatning);
konto.ku.log.Add("Uttagning: " + inmatning);
Console.WriteLine("Nu har du " + konto.pengar + " kr!");
}
}
报表(日志,显示何时以及有多少你存入或提取) :
class Kontoutdrag : Kommando
{
public List<string> log = new List<string>();
public void Hantera(Konto konto)
{
for (int i = 0; i < log.Count; i++)
{
Console.WriteLine(log[i]);
}
}
}
我会尽我所能解释我的问题。我撤回500美元,并希望将其保存到日志(列表)。如果您在Account
课中查看public Kontoutdrag ku = new Kontoutdrag();
,则每个帐户都有一个“声明”/日志。我修改Withdraw
类中的Hantera
方法中的日志列表konto.ku.log.Add("Uttagning: " + inmatning);
。但是当在“Statement”/ Log中调用Hantera
方法时,它不会打印出任何东西。
步骤:
--> Call the `Hantera` method in the `Withdraw` class
--> Change the List in the "Statement"/Log class
--> Call the `Hantera` method in "Statement"/Log class
--> Doesn't print out anything
请告诉我,如果你误解了我,遗憾的命名(这是一个在瑞典)。欢迎您更改此文本和标题。
不应该'Kontoutdrag.Hantera'做'*什么*与'Konto'你通过? –
我们需要看到“Main”中的代码 –
@RowlandShaw是的,这是未完成的。 – Diar78