ReadOnlySpan<T> Estrutura
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece uma representação fortemente tipada e de memória segura de uma região contígua da memória arbitrária.
generic <typename T>
public value class ReadOnlySpan
public readonly ref struct ReadOnlySpan<T>
[System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.ReadOnlySpanMarshaller<,>))]
public readonly ref struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
[<System.Runtime.InteropServices.Marshalling.NativeMarshalling(typeof(System.Runtime.InteropServices.Marshalling.ReadOnlySpanMarshaller<,>))>]
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)
Parâmetros de tipo
- T
O tipo de itens no ReadOnlySpan<T>.
- Herança
- Atributos
Comentários
ReadOnlySpan<T>
é um struct ref alocado na pilha e nunca pode escapar para o heap gerenciado. Os tipos de struct ref têm várias restrições para garantir que eles não possam ser promovidos para o heap gerenciado, incluindo que eles não podem ser boxizados, capturados em expressões lambda, atribuídos a variáveis do tipo Object, atribuídas a dynamic
variáveis e não podem implementar nenhum tipo de interface.
Uma ReadOnlySpan<T>
instância geralmente é usada para referenciar os elementos de uma matriz ou uma parte de uma matriz. Ao contrário de uma matriz, no entanto, uma ReadOnlySpan<T>
instância pode apontar para memória gerenciada, memória nativa ou memória gerenciada na pilha.
Construtores
ReadOnlySpan<T>(T) |
Cria um novo ReadOnlySpan<T> de comprimento 1 em torno da referência especificada. |
ReadOnlySpan<T>(T[]) |
Cria um novo ReadOnlySpan<T> sobre a totalidade de uma matriz especificada. |
ReadOnlySpan<T>(T[], Int32, Int32) |
Cria um novo ReadOnlySpan<T> que inclui um número especificado de elementos de uma matriz, começando em um índice especificado. |
ReadOnlySpan<T>(Void*, Int32) |
Cria um ReadOnlySpan<T> com base em um número especificado de elementos |
Propriedades
Empty |
Retorna um ReadOnlySpan<T> vazio. |
IsEmpty |
Retorna um valor que indica o intervalo atual somente leitura está vazio. |
Item[Int32] |
Obtém um item do intervalo somente leitura no índice baseado em zero especificado. |
Length |
O número de itens no intervalo somente leitura. |
Métodos
CastUp<TDerived>(ReadOnlySpan<TDerived>) |
Fornece uma representação fortemente tipada e de memória segura de uma região contígua da memória arbitrária. |
CopyTo(Span<T>) |
Copia o conteúdo deste ReadOnlySpan<T> para um Span<T> de destino. |
Equals(Object) |
Obsoleto.
Obsoleto.
Não há suporte. Gera uma NotSupportedException. |
GetEnumerator() |
Retorna um enumerador para este ReadOnlySpan<T>. |
GetHashCode() |
Obsoleto.
Não há suporte. Gera uma NotSupportedException. |
GetPinnableReference() |
Retorna uma referência somente leitura a um objeto do tipo T que pode ser usado para fixação. Esse método destina-se a dar suporte a compiladores .NET e não se destina a ser chamado pelo código do usuário. |
Slice(Int32) |
Forma uma fatia com base no intervalo somente leitura atual que começa em um índice especificado. |
Slice(Int32, Int32) |
Forma uma fatia com base no intervalo somente leitura atual que começa em um índice especificado para um tamanho especificado. |
ToArray() |
Copia o conteúdo desse intervalo somente leitura para uma nova matriz. |
ToString() |
Retorna a representação de cadeia de caracteres deste ReadOnlySpan<T>. |
TryCopyTo(Span<T>) |
Tenta copiar o conteúdo deste ReadOnlySpan<T> em um Span<T> e retorna um valor para indicar se a operação foi bem-sucedida. |
Operadores
Equality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Retorna um valor que indica se duas instâncias ReadOnlySpan<T> são iguais. |
Implicit(ArraySegment<T> to ReadOnlySpan<T>) |
Define uma conversão implícita de um ArraySegment<T> em um ReadOnlySpan<T>. |
Implicit(T[] to ReadOnlySpan<T>) |
Define uma conversão implícita de uma matriz em um ReadOnlySpan<T>. |
Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Retorna um valor que indica se duas instâncias ReadOnlySpan<T> não são iguais. |
Métodos de Extensão
ToImmutableArray<T>(ReadOnlySpan<T>) |
Produza uma matriz imutável de conteúdo de elementos especificados. |
BinarySearch<T>(ReadOnlySpan<T>, IComparable<T>) |
Pesquisa um ReadOnlySpan<T> inteiro classificado por um valor usando a interface genérica IComparable<T> especificada. |
BinarySearch<T,TComparer>(ReadOnlySpan<T>, T, TComparer) |
Pesquisa um ReadOnlySpan<T> inteiro classificado por um valor especificado usando o tipo genérico |
BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable) |
Pesquisa um ReadOnlySpan<T> inteiro classificado por um valor usando o tipo genérico |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Localiza o comprimento de qualquer prefixo comum compartilhado entre |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Determina o comprimento de qualquer prefixo comum compartilhado entre |
Contains<T>(ReadOnlySpan<T>, T) |
Indica se um valor especificado é encontrado em um intervalo somente leitura. Os valores são comparados usando IEquatable{T}.Equals(T). |
ContainsAny<T>(ReadOnlySpan<T>, T, T) |
Pesquisa uma ocorrência de |
ContainsAny<T>(ReadOnlySpan<T>, T, T, T) |
Pesquisa uma ocorrência de |
ContainsAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Pesquisa uma ocorrência de qualquer um dos especificados |
ContainsAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa uma ocorrência de qualquer um dos especificados |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T) |
Pesquisa qualquer valor diferente do especificado |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Pesquisa qualquer valor diferente de |
ContainsAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Pesquisa qualquer valor diferente de |
ContainsAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Pesquisa qualquer valor diferente do especificado |
ContainsAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa qualquer valor diferente do especificado |
ContainsAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Pesquisa qualquer valor fora do intervalo entre |
ContainsAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Pesquisa qualquer valor no intervalo entre |
Count<T>(ReadOnlySpan<T>, T) |
Conta o número de vezes que o especificado |
Count<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Conta o número de vezes |
EndsWith<T>(ReadOnlySpan<T>, T) |
Fornece uma representação fortemente tipada e de memória segura de uma região contígua da memória arbitrária. |
EndsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Determina se a sequência especificada aparece no final de um intervalo somente leitura. |
IndexOf<T>(ReadOnlySpan<T>, T) |
Pesquisa o valor especificado e retorna o índice de sua primeira ocorrência. Os valores são comparados usando IEquatable{T}.Equals(T). |
IndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa a sequência especificada e retorna o índice de sua primeira ocorrência. Os valores são comparados usando IEquatable{T}.Equals(T). |
IndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o primeiro índice de qualquer um dos valores especificados, semelhante à chamada de IndexOf várias vezes com o operador OR lógico. |
IndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Pesquisa o primeiro índice de qualquer um dos valores especificados, semelhante à chamada de IndexOf várias vezes com o operador OR lógico. |
IndexOfAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Pesquisa o primeiro índice de qualquer um dos valores especificados. |
IndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa o primeiro índice de qualquer um dos valores especificados, semelhante à chamada de IndexOf várias vezes com o operador OR lógico. |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Pesquisa o primeiro índice de qualquer valor diferente do especificado |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o primeiro índice de qualquer valor diferente do especificado |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Pesquisa o primeiro índice de qualquer valor diferente do especificado |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Pesquisa o primeiro índice de qualquer valor diferente do especificado |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa o primeiro índice de qualquer valor diferente do especificado |
IndexOfAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o primeiro índice de qualquer valor fora do intervalo entre |
IndexOfAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o primeiro índice de qualquer valor no intervalo entre |
LastIndexOf<T>(ReadOnlySpan<T>, T) |
Pesquisa o valor especificado e retorna o índice de sua última ocorrência. Os valores são comparados usando IEquatable{T}.Equals(T). |
LastIndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa a sequência especificada e retorna o índice de sua última ocorrência. Os valores são comparados usando IEquatable{T}.Equals(T). |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o último índice de qualquer um dos valores especificados, semelhante à chamada de LastIndexOf várias vezes com o operador OR lógico. |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
Pesquisa o último índice de qualquer um dos valores especificados, semelhante à chamada de LastIndexOf várias vezes com o operador OR lógico. |
LastIndexOfAny<T>(ReadOnlySpan<T>, SearchValues<T>) |
Pesquisa o último índice de qualquer um dos valores especificados. |
LastIndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa o último índice de qualquer um dos valores especificados, semelhante à chamada de LastIndexOf várias vezes com o operador OR lógico. |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
Pesquisa o último índice de qualquer valor diferente do especificado |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o último índice de qualquer valor diferente do especificado |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
Pesquisa o último índice de qualquer valor diferente do especificado |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, SearchValues<T>) |
Pesquisa o último índice de qualquer valor diferente do especificado |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Pesquisa o último índice de qualquer valor diferente do especificado |
LastIndexOfAnyExceptInRange<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o último índice de qualquer valor fora do intervalo entre |
LastIndexOfAnyInRange<T>(ReadOnlySpan<T>, T, T) |
Pesquisa o último índice de qualquer valor no intervalo entre |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Determina se duas sequências somente leitura se sobrepõem na memória. |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, Int32) |
Determina se duas sequências somente leitura se sobrepõem na memória e gera o deslocamento do elemento. |
Replace<T>(ReadOnlySpan<T>, Span<T>, T, T) |
|
SequenceCompareTo<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Determina a ordem relativa de duas sequências somente leitura comparando seus elementos com o uso de IComparable{T}.CompareTo(T). |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Determina se duas sequências somente leitura são iguais comparando os elementos com o uso de IEquatable{T}.Equals(T). |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
Determina se duas sequências são iguais comparando os elementos usando um IEqualityComparer<T>. |
StartsWith<T>(ReadOnlySpan<T>, T) |
Fornece uma representação fortemente tipada e de memória segura de uma região contígua da memória arbitrária. |
StartsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Determina se uma sequência especificada aparece no início de um intervalo somente leitura. |
Trim<T>(ReadOnlySpan<T>, T) |
Remove todas as ocorrências à esquerda e à direita de um elemento especificado de um intervalo somente leitura. |
Trim<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Remove todas as ocorrências à esquerda e à direita de um conjunto de elementos especificado em um intervalo somente leitura de um intervalo somente leitura. |
TrimEnd<T>(ReadOnlySpan<T>, T) |
Remove todas as ocorrências à direita de um elemento especificado de um intervalo somente leitura. |
TrimEnd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Remove todas as ocorrências à direita de um conjunto de elementos especificado em um intervalo somente leitura de um intervalo somente leitura. |
TrimStart<T>(ReadOnlySpan<T>, T) |
Remove todas as ocorrências à esquerda de um elemento especificado do intervalo. |
TrimStart<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
Remove todas as ocorrências à esquerda de um conjunto de elementos especificado em um intervalo somente leitura do intervalo. |
Aplica-se a
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de