ReadOnlySpan<T> 구조체
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
인접한 임의의 메모리 영역에 대해 형식이 안전하고 메모리가 안전한 읽기 전용 표현을 제공합니다.
generic <typename T>
public value class ReadOnlySpan
public readonly ref struct ReadOnlySpan<T>
type ReadOnlySpan<'T> = struct
Public Structure ReadOnlySpan(Of T)
형식 매개 변수
- T
에 있는 항목의 형식입니다 ReadOnlySpan<T>.
- 상속
설명
ReadOnlySpan<T>
는 스택에 할당되고 관리되는 힙으로 이스케이프할 수 없는 ref 구조체 입니다. Ref 구조체 형식에는 boxed, 람다 식에서 캡처, 형식 Object변수에 할당, 변수에 할당 dynamic
, 인터페이스 형식을 구현할 수 없음을 포함하여 관리되는 힙으로 승격할 수 없도록 하는 여러 제한 사항이 있습니다.
ReadOnlySpan<T>
인스턴스는 배열의 요소 또는 배열의 일부를 참조하는 데 자주 사용됩니다. 그러나 배열과 달리 인스턴스는 ReadOnlySpan<T>
스택에서 관리되는 메모리, 네이티브 메모리 또는 메모리를 가리킬 수 있습니다.
생성자
ReadOnlySpan<T>(T[]) |
지정된 배열 전체에 새로운 ReadOnlySpan<T>을 만듭니다. |
ReadOnlySpan<T>(T[], Int32, Int32) |
지정된 인덱스에서 시작하는 배열의 지정된 요소 수를 포함하는 새 ReadOnlySpan<T>을 만듭니다. |
ReadOnlySpan<T>(Void*, Int32) |
지정된 메모리 주소에서 시작하는 지정된 |
속성
Empty |
빈 ReadOnlySpan<T> 반환합니다. |
IsEmpty |
현재 읽기 전용 범위가 비어 있음을 나타내는 값을 반환합니다. |
Item[Int32] |
지정한 0 기반 인덱스의 읽기 전용 범위에서 항목을 가져옵니다. |
Length |
읽기 전용 범위에서 항목 수입니다. |
메서드
CopyTo(Span<T>) |
이 ReadOnlySpan<T>의 콘텐츠를 대상 Span<T>로 복사합니다. |
Equals(Object) |
사용되지 않습니다.
사용되지 않습니다.
지원되지 않습니다. NotSupportedException를 throw합니다. |
GetEnumerator() |
이 ReadOnlySpan<T>에 대한 열거자를 반환합니다. |
GetHashCode() |
사용되지 않습니다.
지원되지 않습니다. NotSupportedException를 throw합니다. |
GetPinnableReference() |
고정에 사용할 수 있는 T 형식의 개체에 대한 읽기 전용 참조를 반환합니다. 이 메서드는 .NET 컴파일러를 지원하기 위한 것이며 사용자 코드에서 호출할 수 없습니다. |
Slice(Int32) |
지정된 인덱스로 시작되는 현재 읽기 전용 범위에서 하나의 조각을 형성합니다. |
Slice(Int32, Int32) |
지정된 길이에 대해 지정된 인덱스에서 시작하는 현재 읽기 전용 범위에서 벗어난 조각을 형성합니다. |
ToArray() |
이 읽기 전용 범위의 콘텐츠를 새 배열로 복사합니다. |
ToString() |
이 ReadOnlySpan<T>의 문자열 표현을 반환합니다. |
TryCopyTo(Span<T>) |
이 ReadOnlySpan<T>의 내용을 Span<T>으로 복사하고자 시도하고 작업 성공 여부를 나타내는 값을 반환합니다. |
연산자
Equality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
두 ReadOnlySpan<T> 인스턴스가 같은지 여부를 나타내는 값을 반환합니다. |
Implicit(ArraySegment<T> to ReadOnlySpan<T>) |
ArraySegment<T>을 ReadOnlySpan<T>로 변환하는 암시적 변환을 정의합니다. |
Implicit(T[] to ReadOnlySpan<T>) |
배열을 ReadOnlySpan<T>로 변환하는 암시적 변환을 정의합니다. |
Inequality(ReadOnlySpan<T>, ReadOnlySpan<T>) |
두 ReadOnlySpan<T> 인스턴스가 다른지 여부를 나타내는 값을 반환합니다. |
확장 메서드
ToImmutableArray<T>(ReadOnlySpan<T>) |
지정된 요소에서 변경할 수 없는 콘텐츠 배열을 생성합니다. |
BinarySearch<T>(ReadOnlySpan<T>, IComparable<T>) |
지정한 ReadOnlySpan<T> 제네릭 인터페이스를 사용하여 정렬된 전체 IComparable<T>에서 값을 검색합니다. |
BinarySearch<T,TComparer>(ReadOnlySpan<T>, T, TComparer) |
지정한 ReadOnlySpan<T> 제네릭 형식을 사용하여 정렬된 전체 |
BinarySearch<T,TComparable>(ReadOnlySpan<T>, TComparable) |
지정한 ReadOnlySpan<T> 제네릭 형식을 사용하여 정렬된 전체 |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
공유 |
CommonPrefixLength<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
공유 |
Contains<T>(ReadOnlySpan<T>, T) |
지정된 값을 읽기 전용 범위에서 찾을 수 있는지를 나타냅니다. IEquatable{T}.Equals(T)를 사용하여 값을 비교합니다. |
EndsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
지정된 시퀀스가 읽기 전용 범위 끝에 표시되는지 여부를 확인합니다. |
IndexOf<T>(ReadOnlySpan<T>, T) |
지정한 값을 검색하고 맨 처음 발생하는 인덱스를 반환합니다. IEquatable{T}.Equals(T)를 사용하여 값을 비교합니다. |
IndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
지정한 시퀀스를 검색하고 맨 처음 발생하는 인덱스를 반환합니다. IEquatable{T}.Equals(T)를 사용하여 값을 비교합니다. |
IndexOfAny<T>(ReadOnlySpan<T>, T, T) |
논리 OR 연산자를 사용하여 IndexOf를 여러 번 호출하는 것과 유사한 지정된 값의 첫 번째 인덱스를 검색합니다. |
IndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
논리 OR 연산자를 사용하여 IndexOf를 여러 번 호출하는 것과 유사한 지정된 값의 첫 번째 인덱스를 검색합니다. |
IndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
논리 OR 연산자를 사용하여 IndexOf를 여러 번 호출하는 것과 유사한 지정된 값의 첫 번째 인덱스를 검색합니다. |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
지정된 |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
지정된 |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
지정된 |
IndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
지정된 |
LastIndexOf<T>(ReadOnlySpan<T>, T) |
지정한 값을 검색하고 마지막으로 발생하는 인덱스를 반환합니다. IEquatable{T}.Equals(T)를 사용하여 값을 비교합니다. |
LastIndexOf<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
지정한 시퀀스를 검색하고 마지막으로 발생하는 인덱스를 반환합니다. IEquatable{T}.Equals(T)를 사용하여 값을 비교합니다. |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T) |
논리 OR 연산자를 사용하여 LastIndexOf를 여러 번 호출하는 것과 유사한 지정된 값의 마지막 인덱스를 검색합니다. |
LastIndexOfAny<T>(ReadOnlySpan<T>, T, T, T) |
논리 OR 연산자를 사용하여 LastIndexOf를 여러 번 호출하는 것과 유사한 지정된 값의 마지막 인덱스를 검색합니다. |
LastIndexOfAny<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
논리 OR 연산자를 사용하여 LastIndexOf를 여러 번 호출하는 것과 유사한 지정된 값의 마지막 인덱스를 검색합니다. |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T) |
지정된 |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T) |
지정된 |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, T, T, T) |
지정된 |
LastIndexOfAnyExcept<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
지정된 |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
두 읽기 전용 시퀀스가 메모리에서 겹치는지 여부를 확인합니다. |
Overlaps<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, Int32) |
두 읽기 전용 시퀀스가 메모리에서 겹치는지 여부를 확인하고 요소 오프셋을 출력합니다. |
SequenceCompareTo<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
IComparable{T}.CompareTo(T)를 사용하여 해당 요소를 비교하여 두 읽기 전용 시퀀스의 상대 순서를 확인합니다. |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
IEquatable{T}.Equals(T)를 사용하여 요소를 비교하여 두 개의 읽기 전용 시퀀스가 동일한지 여부를 확인합니다. |
SequenceEqual<T>(ReadOnlySpan<T>, ReadOnlySpan<T>, IEqualityComparer<T>) |
를 사용하여 IEqualityComparer<T>요소를 비교하여 두 시퀀스가 같은지 여부를 확인합니다. |
StartsWith<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
지정된 시퀀스가 읽기 전용 범위의 시작 부분에 표시되는지 여부를 확인합니다. |
Trim<T>(ReadOnlySpan<T>, T) |
읽기 전용 범위에서 지정된 요소의 선행 및 후행 발생 항목을 모두 제거합니다. |
Trim<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
읽기 전용 범위에 지정된 요소 집합의 선행 및 후행 발생 항목을 읽기 전용 영역에서 모두 제거합니다. |
TrimEnd<T>(ReadOnlySpan<T>, T) |
읽기 전용 범위에서 지정된 요소의 후행 발생 항목을 모두 제거합니다. |
TrimEnd<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
읽기 전용 범위에 지정된 요소 집합의 후행 발생 항목을 읽기 전용 범위에서 모두 제거합니다. |
TrimStart<T>(ReadOnlySpan<T>, T) |
범위에서 지정된 요소의 선행 발생 항목을 모두 제거합니다. |
TrimStart<T>(ReadOnlySpan<T>, ReadOnlySpan<T>) |
읽기 전용 범위에 지정된 요소 집합의 선행 발생 항목을 범위에서 모두 제거합니다. |