Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > .NET для новичков > Передача не определенного типа


Автор: DenWPF 16.4.2011, 21:35
У меня есть класс, его может использовать несколько других типов.
Для каждого создавать свою версию класса не хочу.

Вот рабочая версия, но в место Main может быть другой класс.
Код

class LinkToolBox
{
    Main m_parent;
    public LinkToolBox(Main parent)
    {
        m_parent = parent;

    }
}


что то на подобие обощения...

Код

class LinkToolBox
{
    T m_parent;
    public LinkToolBox<T>(T parent)
    {
        m_parent = parent;

    }
}


такое как сделать?

Автор: nikitao 16.4.2011, 22:23
так а обощения тебе чем не нравятся ?

Автор: DenWPF 16.4.2011, 22:31
Я в них не шарю. Как в этом примере его сделать?

Автор: Экскалупатор 16.4.2011, 22:41
DenWPF, что то я не совсем догоняю идею можешь разъяснить подробнее? у тебя класс Main должен использовать LinkToolBox? или наоборот?

Автор: DenWPF 16.4.2011, 22:46
У меня есть ещё Workspace, который так же может этот класс использовать, и все действия одинаковые.

Хотя я уже понял, лучше найти общий класс родитель т.е что бы Workspace и Main было производным к примеру от Control и я смогу передавать туда переменную с типом Control.

Автор: Экскалупатор 16.4.2011, 23:13
DenWPF, угу, я так и понял просто решил уточнить, Т тут не поможет(мне кажется), лучше либо общий родитель либо интерфейс определить.(тут можно начать холивар на тему что лучше, абстрактный класс или интерфейс))) от себя скажу, если у классов есть общий функционал то удобнее его вынести в родительский класс, а если у классов только методы называются одинаково то лучше интерфейс.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)