Span<T> Конструкторы

Определение

Перегрузки

Имя Описание
Span<T>(T)

Создает новую Span<T> длину 1 вокруг указанной ссылки.

Span<T>(T[])

Создает новый Span<T> объект на протяжении всего указанного массива.

Span<T>(Void*, Int32)

Создает объект Span<T> из указанного числа элементов, начиная с указанного T адреса памяти.

Span<T>(T[], Int32, Int32)

Создает новый Span<T> объект, содержащий указанное количество элементов массива, начиная с указанного индекса.

Span<T>(T)

Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs

Создает новую Span<T> длину 1 вокруг указанной ссылки.

public:
 Span(T % reference);
public Span(ref T reference);
new Span<'T> : 'T -> Span<'T>
Public Sub New (ByRef reference As T)

Параметры

reference
T

Ссылка на данные.

Применяется к

Span<T>(T[])

Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs

Создает новый Span<T> объект на протяжении всего указанного массива.

public:
 Span(cli::array <T> ^ array);
public Span(T[]? array);
public Span(T[] array);
new Span<'T> : 'T[] -> Span<'T>
Public Sub New (array As T())

Параметры

array
T[]

Массив, из которого создается Span<T> объект.

Исключения

T является ссылочным типом и array не является массивом типов T.

Комментарии

В противном случае arraynullэтот конструктор возвращает nullSpan<T>объект.

Применяется к

Span<T>(Void*, Int32)

Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs

Важно!

Этот API несовместим с CLS.

Создает объект Span<T> из указанного числа элементов, начиная с указанного T адреса памяти.

public:
 Span(void* pointer, int length);
[System.CLSCompliant(false)]
public Span(void* pointer, int length);
[<System.CLSCompliant(false)>]
new Span<'T> : nativeptr<unit> * int -> Span<'T>

Параметры

pointer
Void*

Указатель на начальный адрес указанного T числа элементов в памяти.

length
Int32

Количество T элементов, которые необходимо включить в Span<T>.

Атрибуты

Исключения

T является ссылочным типом или содержит указатели, поэтому не может храниться в неуправляемой памяти.

length отрицательно.

Комментарии

Этот конструктор должен использоваться с осторожностью, так как он создает произвольные Tтипизированные void*s из блока памяти типа типа и не pointerlength проверяется конструктором.

Применяется к

Span<T>(T[], Int32, Int32)

Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs
Исходный код:
Span.cs

Создает новый Span<T> объект, содержащий указанное количество элементов массива, начиная с указанного индекса.

public:
 Span(cli::array <T> ^ array, int start, int length);
public Span(T[]? array, int start, int length);
public Span(T[] array, int start, int length);
new Span<'T> : 'T[] * int * int -> Span<'T>
Public Sub New (array As T(), start As Integer, length As Integer)

Параметры

array
T[]

Исходный массив.

start
Int32

Отсчитываемый от нуля индекс первого элемента, включаемый в новый Span<T>.

length
Int32

Число элементов, которые необходимо включить в новое Span<T>.

Исключения

array имеет значение null, но start или length не равно нулю.

–или–

start находится за пределами границ массива.

–или–

start и length превышает количество элементов в массиве.

T является ссылочным типом и array не является массивом типов T.

Комментарии

Этот метод возвращает default значение, когда array есть null.

Применяется к