У меня есть методы, допустим один из них Menu, другой CarSalon, мне надо зайти в метод CarSalon, купить там машину, и вернуться в метод Menu не заканчивая программу. Вариант я нашел только один при выборе методов в Menu у меня есть методы Salon, Race и т.д., после обращение к этим методам я опять обращаюсь к методу Menu, только в этом случае не заканчивается программа. Если я не ошибаюсь то это будет вызывать перегрузку, и рано или поздно выйдет Stack Overflow, подскажите будет перегрузка или нет? Если будет, то как мне сделать так чтобы я обращался к разным методам без перегрузки. Вот код которого должно хватить для понятия:
try// часть Menu
{
int MenuOption = int.Parse(Console.ReadLine());
if (MenuOption == 1)//Обращение к другому методу
{
Console.Clear();
Console.WriteLine($"Хорошо {Name}, переношу в раздел Информации");
Info(Name, Menu.YouCarBrand, KM100YouCar, MaxSpeedYouCar);
}
if (MenuOption == 2)//Обращение к другому методу
{
Console.Clear();
Console.WriteLine($"Хорошо {Name}, переношу в раздел Салона");
Salon.SalonMenu(Name, MoneyBalance, Price, MaxSpeed, TimeToSpeed100KM, CarNumber, CarBrand, MaxSpeedYouCar, KM100YouCar, YouCarBrand);
SalonBuy();
}
if (MenuOption == 3)//Обращение к другому методу
{
Console.Clear();
Console.WriteLine($"Хорошо {Name}, отправляемся в Гонку");
}
if (MenuOption <= 0)
{
Console.Clear();
Console.WriteLine($"{Name}, такого выбора нету!");
MainMenu(Name);
}
if (MenuOption >= 3)
{
Console.Clear();
Console.WriteLine($"{Name}, такого выбора нету!");
MainMenu(Name);
}
}
catch (Exception)
{
Console.WriteLine($"{Name}, такого выбора нету, переношу в меню!");
Console.Clear();
MainMenu(Name);
}
void SalonBuy()
{
Console.WriteLine("Какую машину вы хотите купить?");
/Код покупки машины в методу Salon, в конце возвращение через перегрузку
int BuyCar = int.Parse(Console.ReadLine());
int NumCar = BuyCar - 1;
Console.Clear();
if (BuyCar == CarNumber[NumCar] && MoneyBalance >= Price[NumCar])
{
YouCarBrand = CarBrand[NumCar];
KM100YouCar = TimeToSpeed100KM[NumCar];
MaxSpeedYouCar = MaxSpeed[NumCar];
MoneyBalance = MoneyBalance - Price[NumCar];
Console.WriteLine($"Вы успешно купили {CarBrand[NumCar]}");
Console.ReadLine();
MainMenu(Name);
}
else
{
Console.WriteLine($"Вам не хватило денег на {CarBrand[NumCar]}");
}
//Не обращайте внимание что методы Salon именованы по разному, вопрос бы стал слишком большой, выход все равно будет Menu