Compartilhar via


Span<T> Construtores

Definição

Sobrecargas

Span<T>(T)

Cria um novo Span<T> de comprimento 1 em torno da referência especificada.

Span<T>(T[])

Cria um novo objeto Span<T> em toda a matriz especificada.

Span<T>(Void*, Int32)

Cria um novo objeto Span<T> de um número especificado de elementos T começando em um endereço de memória especificado.

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

Cria um novo objeto Span<T> que inclui um número especificado de elementos de uma matriz começando em um índice especificado.

Span<T>(T)

Origem:
Span.cs
Origem:
Span.cs
Origem:
Span.cs

Cria um novo Span<T> de comprimento 1 em torno da referência especificada.

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

Parâmetros

reference
T

Uma referência aos dados.

Aplica-se a

Span<T>(T[])

Origem:
Span.cs
Origem:
Span.cs
Origem:
Span.cs

Cria um novo objeto Span<T> em toda a matriz especificada.

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())

Parâmetros

array
T[]

A matriz da qual criar o objeto Span<T>.

Exceções

T é um tipo de referência e array não é uma matriz de tipo T.

Comentários

Se array for null, esse construtor retornará um nullSpan<T>.

Aplica-se a

Span<T>(Void*, Int32)

Origem:
Span.cs
Origem:
Span.cs
Origem:
Span.cs

Importante

Esta API não está em conformidade com CLS.

Cria um novo objeto Span<T> de um número especificado de elementos T começando em um endereço de memória especificado.

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>

Parâmetros

pointer
Void*

Um ponteiro para o endereço inicial de um número especificado de elementos T na memória.

length
Int32

O número de elementos T a serem incluídos no Span<T>.

Atributos

Exceções

T é um tipo de referência ou contém ponteiros e, portanto, não podem ser armazenados na memória não gerenciada.

length é negativo.

Comentários

Esse construtor deve ser usado com cuidado, pois cria Tde tipo arbitrariamente a partir de um bloco de memória tipo void*e nem pointer nem length são validados pelo construtor.

Aplica-se a

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

Origem:
Span.cs
Origem:
Span.cs
Origem:
Span.cs

Cria um novo objeto Span<T> que inclui um número especificado de elementos de uma matriz começando em um índice especificado.

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)

Parâmetros

array
T[]

A matriz de origem.

start
Int32

O índice baseado em zero do primeiro elemento a ser incluído no novo Span<T>.

length
Int32

O número de elementos a serem incluídos no novo Span<T>.

Exceções

array é null, mas start ou length não é zero.

-ou-

start está fora dos limites da matriz.

-ou-

start e length excede o número de elementos na matriz.

T é um tipo de referência e array não é uma matriz de tipo T.

Comentários

Esse método retorna default quando array é null.

Aplica-se a