Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
EvilKot
2 / 2 / 0
Регистрация: 24.10.2013
Сообщений: 13
#1

С помощью метода получить все экземпляры класса-потомка - C#

31.10.2013, 07:46. Просмотров 470. Ответов 4
Метки нет (Все метки)

Прошу прощения за кривизну вопроса, не знаю как спросить у гугла

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class MyClass
    {
 
        static List<MyClass> myList = new List<MyClass>();
 
        public MyClass()
        {
            myList.Add(this);
        }
 
        static public MyClass FindObjectsOfType(Type t)
        {
            return myList.OfType<t>(); // ошибка
        
        }
 
 
    }
Каждый новый экземпляр записывается в коллекцию при инициализации.
Допустим этот класс наследуется другими, и я хочу с помощью метода FindObjectsOfType()
получить все экземпляры указанного класса-потомка.
Как это сделать, простым/сложным способом?
Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2013, 07:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос С помощью метода получить все экземпляры класса-потомка (C#):

Экземпляры класса, вызов переопределенного метода - C#
как лучше вызвать переопределенный метод? Console.WriteLine(m1.ToString()); или через статический метод(так как сделал ниже в...

Передача управления из конструктора класса-родителя в конструктор класса-потомка - C#
Здравствуйте. Возможно ли передать управление из конструктора класса-родителя в конструктор класса-потомка? Например, есть класс...

Полиморфизм: вызов метода базового класса, переопределенного метода и нового метода - C#
В базовом классе метод помечен как virtual. Насколько я понял из книги: override означает, что метод не утрачивает связи с базовым...

экземпляры класса - C#
По лабе надо написать консольное приложение, что то вроде базы данных студентов, пишу я и столкнулся с такой проблемой: при добавлении...

Как получить имена членов класса с помощью рефлексии - C#
Как получить имена членов класса с помощью рефлексии?

Указатель на экземпляры класса - C#
Доброе время суток господа профи. У меня вопрос допустим что есть класс A и в программе есть несколько его экземпляров таких классов, так...

4
turbanoff
Эксперт Java
4003 / 3738 / 467
Регистрация: 18.05.2010
Сообщений: 9,316
Записей в блоге: 11
Завершенные тесты: 1
31.10.2013, 08:32 #2
C#
1
2
3
4
5
        static public List<MyClass> FindObjectsOfType(Type t)
        {
            return myList.Where(p => p.GetType() == t).ToList();
        
        }
1
EvilKot
2 / 2 / 0
Регистрация: 24.10.2013
Сообщений: 13
31.10.2013, 08:46  [ТС] #3
Здорово, спасибо!

..я ещё и в типе возр значения накосячил
0
nio
5947 / 3353 / 200
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
31.10.2013, 10:47 #4
Цитата Сообщение от turbanoff Посмотреть сообщение
C#
1
2
3
4
static public List<MyClass> FindObjectsOfType(Type t)
{
   return myList.Where(p => p.GetType() == t).ToList();
}
только в этом случае получается, что обязательно условие t = MyClass
0
kolorotur
Эксперт .NET
9842 / 8220 / 1380
Регистрация: 17.09.2011
Сообщений: 14,128
31.10.2013, 11:07 #5
Цитата Сообщение от turbanoff Посмотреть сообщение
C#
1
return myList.Where(p => p.GetType() == t).ToList();
Как вариант:
C#
1
return myList.OfType(t).ToList();
Хотя не, не вариант — он же по-другому работает
0
31.10.2013, 11:07
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2013, 11:07
Привет! Вот еще темы с ответами:

Как получить значения статического поля класса с помощью рефлексии? - C#
Есть библиотека классов в ней некоторый класс А. у этого класса есть статическое поле - его ID. Class A{ static int ID; } в главное...

Перебрать в цикле экземпляры класса - C#
Имеется класс &quot;shar&quot;. Имеется список List &lt;shar&gt; ballList с экземплярами этого класса. Необходимо перебрать в цикле эти экземпляры. Раньше...

Переопределение методов класса - потомка - C#
Подскажите, где можно почитать про это? На msdn теории особо нет.

Возврат потомка класса из generic - C#
Здравствуйте. Имеется generic: public interface IOptionable&lt;T&gt; where T : NamableClass { T Options { get; set; } ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru