Как сделать перегрузку метода ToString() - C#
Формулировка задачи:
Помогите сделать перегрузку метода ToString(), еще чтобы были готовые 3 пациента при запуске, и после занесения данных они не записываются а программа чего то ждет стоит, заранее спасибо!
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace OOP { class Hospital { class patient { string name; //имя string lastname; //фамилия string patronumic; // отчество Adress adress;//адресс Disease[] history; bool isStay; public patient(string _name, string _lastname, string _patronumic, Adress _adress) //конструктёр пациента { /* заносим данные в карточку*/ name = _name; lastname = _lastname; patronumic = _patronumic; adress = _adress; isStay = true; history = new Disease[100]; // массив истории болезни пациента } public Adress Adress // св-во Адрес { get { return adress; } //только чтение } public string FIO //фио { get { return lastname + " " + name + " " + patronumic; } //только чтение } public bool IsStay // стоит ли на учете больной { // чтение и запись get { return isStay; } // получение сведений об учете больного set { isStay = value; } //измемнение состояния учета } public void Visit(DateTime date, string diagnose) // обращение пациента в поликлиннику { Disease disease = new Disease(date, diagnose); // регистрируем болезнь history.SetValue(disease, history.Count()); // заносим в карточку } } string name; //наименование поликлинники static List<patient> my = new List<patient>(); internal struct Adress { private string street; //улица private string city; // город private byte house; // номер дома private byte flat; //# кваритры public Adress(string _street, string _city, byte _house, byte _flat)//конструктор структуры адреса { street = _street; city = _city; house = _house; flat = _flat; } } private struct Disease { DateTime time; string diagnose; public Disease(DateTime _time, string _diagnose) { time = _time; diagnose = _diagnose; } } public void Hospital1() // конструктор больницы { name = "Поликлинника №1"; // задаем имя поликлинники } static void AddPatient(string name, string lastname, string patronymic, Adress adress) // регистрация пациента в больнице { patient Patient = new patient(name, lastname, patronymic, adress); // создаем карточку нового больного my.Add(Patient);// ложим ее в архив } public void SetStay(int ID, bool isStay) // снятие/постановка больного на учет в больницу { if ((ID < 0) || (ID > my.Count())) // если нет такого пациента, то ничего не делаем return; my[ID].IsStay = isStay; // снятие/постановка } static void Visit(int ID, DateTime date, string diagnose) // обращение пациента в больницу { if ((ID < 0) || (ID > my.Count())) // если нет такого пациента, то ничего не делаем return; my[ID].Visit(date, diagnose); } public static void Main() { char a; { System.Console.Clear(); System.Console.WriteLine("\tБольница \n"); System.Console.WriteLine("1. Добавить пациента"); System.Console.WriteLine("2. Вывести список пациентов"); System.Console.WriteLine("3. Удалить Пациента"); System.Console.WriteLine("4. Обращение пациента"); System.Console.WriteLine("5. постановка/снятие пациента с учета"); System.Console.WriteLine("\n0. выход"); a = System.Console.ReadKey().KeyChar; switch (a) { case '1': { System.Console.Clear(); System.Console.WriteLine("Введите имя: "); string name = Console.ReadLine(); System.Console.WriteLine("Введите фамилию: "); string lastname = Console.ReadLine(); System.Console.WriteLine("Введите отчество: "); string patronymic = Console.ReadLine(); System.Console.WriteLine("Введите адрес: \n"); System.Console.WriteLine("город: "); string _city = Console.ReadLine(); System.Console.WriteLine("Улица: "); string _street = Console.ReadLine(); System.Console.WriteLine("Дом: "); byte _house = byte.Parse(Console.ReadLine()); System.Console.WriteLine("Квартира: "); byte _flat = byte.Parse(Console.ReadLine()); Adress adress = new Adress(_street, _city, _house, _flat); AddPatient(name, lastname, patronymic, adress); break; } case '2': { for (int i = 0; i < my.Count; i++) { System.Console.Clear(); System.Console.WriteLine("ID: " + i); System.Console.WriteLine("FIO: " + my[i].FIO); System.Console.WriteLine("Учет: " + my[i].IsStay); } System.Console.ReadKey(); break; } case '3': { System.Console.Clear(); System.Console.WriteLine("Напишите номер записи которую хотите удалить: "); int i = int.Parse(System.Console.ReadLine()); my.RemoveAt(i); } break; case '4': { System.Console.Clear(); System.Console.WriteLine("Введите номер пациента: "); int i = int.Parse(System.Console.ReadLine()); System.Console.WriteLine("Введите диагноз: "); string s = System.Console.ReadLine(); Visit(i, DateTime.Today, s); } break; case '5': { System.Console.Clear(); System.Console.WriteLine("Введите номер пациента: "); int i = int.Parse(System.Console.ReadLine()); my[i].IsStay = !my[i].IsStay; } break; } } while (a != '0') ; } } }
Решение задачи: «Как сделать перегрузку метода ToString()»
textual
Листинг программы
public override string ToString() { return string.Format("Street: {0}, City: {1}, House: {2}, Flat: {3}", street, city, house, flat); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д