Получить имя класса - C#
Формулировка задачи:
Привет, есть класс Warrior, это юнит. Есть класс Army, в этом классе есть метод CreateArmy, который помещает юнита warrior в стек. Вопрос такой: нужно записывать в лог что этот warrior делает, хочу вывести как : Юнит Warrior, из армии "имя армии" нанес 5 урона. В конструкторе класса Army есть поле Name, которое и хранит имя класса. Как мне получить имя класса чтобы вписать его в "имя армии". Тип юнита получаю через unit.GetType(), а как еще глубже копнуть до имени класса не знаю.
Решение задачи: «Получить имя класса»
textual
Листинг программы
class Warrior
{
public Army Army { get; private set; }
public Warrior(Army army)
{
Army = army;
}
public void DoDamage(int amount)
{
Console.WriteLine("Юнит Warrior, из армии "{0}" нанес {1} урона.", Army.Name, amount);
}
}
class Army
{
private Stack<Warrior> warriors = new Stack<Warrior>();
public string Name { get; private set; }
public Army(string name)
{
Name = name;
}
public void CreateArmy()
{
warriors.Push(new Warrior(this));
}
}