Я думаю, что вы ищете функцию CreateProcess в Windows API. Есть на самом деле семья связанных звонков, но это поможет вам начать. Это довольно легко.
Используйте метод HashSet
. Этот метод копирует элементы из HashSet
в массив.
Итак, учитывая HashSet
, называемый stringSet
, вы должны сделать что-то вроде это:
String[] stringArray = new String[stringSet.Count];
stringSet.CopyTo(stringArray);
Если вы имеете в виду System.Collections.Generic.HashSet, это довольно сложно, поскольку этот класс не существует до версии 3.5.
Если вы имеете в виду, что используете 3.5, просто используйте ToArray, поскольку HashSet реализует IEnumerable, например
using System.Linq;
...
HashSet<int> hs = ...
int[] entries = hs.ToArray();
Если у вас есть собственный класс HashSet, трудно сказать.
Я полагаю
function T[] ToArray<T>(ICollection<T> collection)
{
T[] result = new T[collection.Count];
int i = 0;
foreach(T val in collection)
{
result[i++] = val;
}
}
, как и для любой реализации ICollection
.
Фактически, поскольку вы должны ссылаться на System.Core
, чтобы используйте класс HashSet
, вы также можете его использовать:
T[] myArray = System.Linq.Enumerable.ToArray(hashSet);