Я пытаюсь создать класс в C#, называемый клиентом, с 3 переменными: имя, начальный депозит и ежемесячная сумма депозита.
Это для консольной программы, которая принимает пользовательский ввод для этих трех переменных и продолжает запрашивать больше пользователей, пока пользователь ничего не наберет и не нажмет enter.
Однако строка customer userInputName = new customer(userInputName, userInputInitial, userInputMonthly);
выдаёт мне ошибки. Первое userInputName подчеркнуто, говоря , что «локальный или параметр с именем« userInputName »не может быть удален в этой области, потому что это имя используется во внешней локальной области для определения локального или параметра« . Второе 'userInputName' говорит «Аргумент 1: невозможно преобразовать из« lab4.Program.customer »в« строку »» .
Единственный способ исправить это, изменив первое имя пользователя userInput на что-то вроде customer1, но если я это сделаю, я не смогу постоянно заводить новых клиентов, если пользователь продолжит вводить имена.
В идеале я хочу иметь возможность напечатать что-то вроде customer.Bob.initialDeposit и иметь программу, способную сообщить мне, каков был первоначальный депозит Боба, и т. Д. c.
Как мне этого добиться, или что я делаю не так?
using System;
namespace lab4
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("How many months will the customer keep the money in the account?");
string monthsString = Console.ReadLine();
int months = Int32.Parse(monthsString);
bool run = true;
while (run)
{
Console.WriteLine("Enter new customer name: ");
string userInputName = Console.ReadLine();
if (userInputName == "")
{
run = false;
}
else
{
Console.WriteLine("Enter initial deposit amount: ");
string stringInitDeposit = Console.ReadLine();
int userInputInitial = Int32.Parse(stringInitDeposit);
Console.WriteLine("Enter montly deposit amount: ");
string stringMonthDeposit = Console.ReadLine();
int userInputMonthly = Int32.Parse(stringMonthDeposit);
customer userInputName = new customer(userInputName, userInputInitial, userInputMonthly);
}
}
}
public class customer
{
public string name;
public int initialDeposit;
public int monthlyDeposit;
public customer(string name, int initialDeposit, int monthlyDeposit)
{
this.name = name;
this.initialDeposit = initialDeposit;
this.monthlyDeposit = monthlyDeposit;
}
}
}
}