ReadOnlySpan<T> Estrutura

Definição

Fornece uma representação de leitura segura para tipos e memória de uma região contígua de memória arbitrária.

generic <typename T>
public value class ReadOnlySpan
public readonly ref struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)

Parâmetros de Tipo Genérico

T

O tipo de itens no ReadOnlySpan<T>.

Herança
ReadOnlySpan<T>

Observações

ReadOnlySpan<T> é uma struct de referência que é alocada na pilha e nunca pode escapar para o heap gerido. Os tipos de ref struct têm várias restrições para garantir que não podem ser promovidos para o heap gerido, incluindo que não podem ser agrupados, capturados em expressões lambda, atribuídos a variáveis do tipo Object, atribuídos a dynamic variáveis, e não podem implementar qualquer tipo de interface.

Uma ReadOnlySpan<T> instância é frequentemente usada para referenciar os elementos de um array ou uma parte de um array. Ao contrário de uma matriz, no entanto, uma instância ReadOnlySpan<T> pode referir-se a memória gerida, memória nativa ou memória gerida na pilha.

Construtores

Name Description
ReadOnlySpan<T>(T[], Int32, Int32)

Cria um novo ReadOnlySpan<T> que inclui um número especificado de elementos de um array a partir de um índice especificado.

ReadOnlySpan<T>(T[])

Cria um novo ReadOnlySpan<T> ao longo de todo um array especificado.

ReadOnlySpan<T>(Void*, Int32)

Cria um novo ReadOnlySpan<T> a partir de um número especificado de T elementos a partir de um endereço de memória especificado.

Propriedades

Name Description
Empty

Devolve um ficheiro ReadOnlySpan<T>.

IsEmpty

Devolve um valor que indica que o intervalo de apenas leitura atual está vazio.

Item[Int32]

Obtém um item do intervalo de apenas leitura no índice zero especificado.

Length

O número de itens no intervalo de apenas leitura.

Métodos

Name Description
CopyTo(Span<T>)

Copia o conteúdo disto ReadOnlySpan<T> para um destino Span<T>.

Equals(Object)
Obsoleto.

Não suportado. Lança um NotSupportedException.

GetEnumerator()

Devolve um enumerador para este ReadOnlySpan<T>.

GetHashCode()
Obsoleto.

Não suportado. Lança um NotSupportedException.

GetPinnableReference()

Devolve uma referência somente de leitura a um objeto do tipo T que pode ser usado para fixação.

Este método destina-se a suportar compiladores .NET e não deve ser chamado por código de utilizador.

Slice(Int32, Int32)

Forma uma fatia a partir do vão atual de apenas leitura começando num índice especificado para um comprimento especificado.

Slice(Int32)

Forma uma fatia a partir do intervalo atual de apenas leitura que começa num índice especificado.

ToArray()

Copia o conteúdo deste intervalo de apenas leitura para um novo array.

ToString()

Devolve a representação da cadeia desta ReadOnlySpan<T>.

TryCopyTo(Span<T>)

Tenta copiar o conteúdo disto ReadOnlySpan<T> para um Span<T> e retorna um valor para indicar se a operação teve sucesso ou não.

Operadores

Name Description
Equality(ReadOnlySpan<T>, ReadOnlySpan<T>)

Devolve um valor que indica se duas ReadOnlySpan<T> instâncias são iguais.

Implicit(ArraySegment<T> to ReadOnlySpan<T>)

Define uma conversão implícita de um ArraySegment<T> para um ReadOnlySpan<T>.

Implicit(T[] to ReadOnlySpan<T>)

Define uma conversão implícita de um array para um ReadOnlySpan<T>.

Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>)

Devolve um valor que indica se duas ReadOnlySpan<T> instâncias não são iguais.

Métodos da Extensão

Name Description
BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable)

Pesquisa um valor inteiro ordenado ReadOnlySpan<T> usando o tipo genérico especificado TComparable .

BinarySearch<T,TComparer>(ReadOnlySpan<T>, T, TComparer)

Pesquisa numa ordenação ReadOnlySpan<T> inteira por um valor especificado usando o tipo genérico especificado TComparer .

BinarySearch<T>(ReadOnlySpan<T>, IComparable<T>)

Pesquisa um valor inteiro ordenado ReadOnlySpan<T> usando a interface genérica especificada IComparable<T> .

EndsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Determina se a sequência especificada aparece no final de um intervalo apenas de leitura.

IndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Procura a sequência especificada e devolve o índice da sua primeira ocorrência.

IndexOf<T>(ReadOnlySpan<T>, T)

Procura o valor especificado e devolve o índice da sua primeira ocorrência.

IndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Procura o primeiro índice de qualquer um dos valores especificados.

IndexOfAny<T>(ReadOnlySpan<T>, T, T, T)

Procura o primeiro índice de qualquer um dos valores especificados.

IndexOfAny<T>(ReadOnlySpan<T>, T, T)

Procura o primeiro índice de qualquer um dos valores especificados.

LastIndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Procura a sequência especificada e devolve o índice da sua última ocorrência.

LastIndexOf<T>(ReadOnlySpan<T>, T)

Procura o valor especificado e devolve o índice da sua última ocorrência.

LastIndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Procura o último índice de qualquer um dos valores especificados.

LastIndexOfAny<T>(ReadOnlySpan<T>, T, T, T)

Procura o último índice de qualquer um dos valores especificados.

LastIndexOfAny<T>(ReadOnlySpan<T>, T, T)

Procura o último índice de qualquer um dos valores especificados.

Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, Int32)

Determina se duas sequências de apenas leitura se sobrepõem na memória e gera o deslocamento de elemento.

Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Determina se duas sequências de apenas leitura se sobrepõem na memória.

SequenceCompareTo<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Determina a ordem relativa de duas sequências somente de leitura comparando os seus elementos usando IComparable{T}. CompareTo(T).

SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Determina se duas sequências somente de leitura são iguais comparando os elementos usando IEquatable{T}. É igual a T.

StartsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>)

Determina se uma sequência especificada aparece no início de um intervalo de apenas leitura.

Aplica-se a

Ver também