Аргументы объекта

460
02 января 2017, 21:03

Каким образом я могу вывести на экран аргументы моих объектов в методе cout?

class Program
{
    static void Main(string[] args)
    {
        Instr box_1 = new Instr(15,13,"tree");
        Instr box_2 = new Instr(53,35,"metal");
        cout(box_1);
        cout(box_2);            
        Console.ReadKey();
    }
    public static void cout(object g)
    {
    }
}
Answer 1
public static void cout(object g)
{
    //нужно привести параметр к нужному вам типу
    Instr box = g as Instr;
    //если получилось, то вывести нужные значения
    if (box != null)
    {
         Console.WriteLine($"{box.НужноеСвойство}");
    }
}

Или переопределить метод ToString() в вашем классе Instr для этого в этом классе напишите override нажмите пробел - вам студия выведет список возможных для переопределения методов, выбирайте ToString(). А дальше в нем пропишите что-то типа

return $"{this.НужноеСвойство1} - {this.НужноеСвойство2}, {this.НужноеСвойство3}";

после этого вы в своем методе public static void cout(object g) сможете вызвать ToString() и вывести значения всех нужных вам свойств.

READ ALSO
Синхронизация 2-х потоков

Синхронизация 2-х потоков

Есть 2 потока , которые рисуют 2 машинки на консоли и имитируют их движениеМашинка -Враг- спускается сверху , а игрок должен ее обойти

377
yii2 правила для поддоменов

yii2 правила для поддоменов

ЗдравствуйтеФреймворк YII2

1034
Почему не работает theme_preprocess_menu_link?

Почему не работает theme_preprocess_menu_link?

Требуется сделать так, чтобы в теме Drupal 7 подсвечивался активный пункт меню, для этого нужно задать класс active тегу <li> вместо <a>По определёным...

434
Запись значения из textarea в txt файлы

Запись значения из textarea в txt файлы

ЗдравствуйтеУ меня есть на странице 3 поля textarea

454