Как сделать список <>, который содержит пустоты? - PullRequest
3 голосов
/ 18 ноября 2011

Я получаю ошибку, когда делаю List<void> voidList = new List<void>();. Как бы я сделал что-то подобное с пустотами?

Ответы [ 4 ]

7 голосов
/ 18 ноября 2011

Если вы хотите хранить список пустых методов, вы можете использовать List<Action>.

4 голосов
/ 18 ноября 2011

Работает на моно:

var x = new List<System.Void>();

Конечно,

var x = new List<Action>();

одинаково хорошо работает, но гораздо полезнее

0 голосов
/ 18 ноября 2011
private void DoStuff1() { ... }
private void DoStuff2() { ... }

var myActions = new List<Action> { DoStuff1, DoStuff2 };

Тогда, скажем, вы, возможно, захотите перебрать и вызвать их всех:

foreach (var action in myActions)
{
    action();
}
0 голосов
/ 18 ноября 2011

Почему?

Вы можете создать список, который позволит любому объекту (или штучной структуре) в список.

Но вы в основном используете общий список для чего-то, что неродовой.Вы можете создать наиболее распространенный базовый класс для хранения ваших объектов. Если общего нет, тогда Object - то, что вам нужно.

...