Перегрузка и добавление статистического поля в классе - C#
Формулировка задачи:
Для данной программы:
1) Перегрузить: ++, *, >=, <=
2) Добавить в класс статическое поле для подсчета количества объектов этого класса.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace _5_2
{
class Program
{
static void Main(string[] args)
{
Worker[] workers = new Worker[6];
for (int i = 0; i < 6;i++ )
{
workers[i] = new Worker();
}
workers[0].Surname = "Иванов";
workers[0].Name= "Иван";
workers[0].Patronymic = "Иванович";
workers[0].Post = "Директор";
workers[0].Year = 1985;
workers[0].Pay = 5000000;
workers[1].Surname = "Петров";
workers[1].Name = "Петр";
workers[1].Patronymic = "Петрович";
workers[1].Post = "Нач. отдела";
workers[1].Year = 1990;
workers[1].Pay = 4000000;
workers[2].Surname = "Семёнов";
workers[2].Name = "Семён";
workers[2].Patronymic = "Семёнович";
workers[2].Post = "Бухгалтер";
workers[2].Year = 1995;
workers[2].Pay = 3000000;
workers[3].Surname = "Павлов";
workers[3].Name = "Павел";
workers[3].Patronymic = "Павлович";
workers[3].Post = "Экономист";
workers[3].Year = 2000;
workers[3].Pay = 2500000;
workers[4].Surname = "Егоров";
workers[4].Name = "Егор";
workers[4].Patronymic = "Егорович";
workers[4].Post = "Менеджер";
workers[4].Year = 2005;
workers[4].Pay = 2000000;
workers[5].Surname = "Сергеев";
workers[5].Name = "Сергей";
workers[5].Patronymic = "Сергеевич";
workers[5].Post = "Уборщик";
workers[5].Year = 2010;
workers[5].Pay = 1500000;
do
{
Console.WriteLine("Введите число лет работы, для вывода информации о работнике:");
int years = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < 6; i++)
{
if (2015 - workers[i].Year > years)
{
Console.WriteLine("-----------------------");
workers[i].Show();
}
}
Console.WriteLine("-----------------------");
Console.WriteLine("Продолжить работу программы? (да/нет)");
}
while (Console.ReadLine() != "n");
}
}
class Worker
{
string surname = "";
string name = "";
string patronymic = "";
string post="";
int year = 0;
int pay = 0; // :((
public string Surname
{
get { return surname; }
set { surname = value; }
}
public string Name
{
get { return name; }
set { name = value; }
}
public string Patronymic
{
get { return patronymic; }
set { patronymic = value; }
}
public string Post
{
get { return post; }
set { post = value; }
}
public int Year
{
get { return year; }
set { year = value; }
}
public int Pay
{
get { return pay; }
set { pay = value; }
}
public void Show()
{
Console.WriteLine("Информация по работнику:");
Console.WriteLine("Фамилия: {0}", Surname);
Console.WriteLine("Имя: {0}", Name);
Console.WriteLine("Отчество: {0}", Patronymic);
Console.WriteLine("Должность: {0}", Post);
Console.WriteLine("Год поступления на работу: {0}", Year);
Console.WriteLine("Зарплата: {0}", Pay);
}
}
}Решение задачи: «Перегрузка и добавление статистического поля в классе»
textual
Листинг программы
public static Worker operator ++(Worker obj1)
{
// Перегрузка ++, остальное по аналогии
return obj1;
}