Unsafe.Subtract Método

Definição

Sobrecargas

Name Description
Subtract<T>(Void*, Int32)

Subtrai um elemento deslocado do ponteiro não gerido dado.

Subtract<T>(T, Int32)

Subtrai um deslocamento do ponteiro gerido dado.

Subtract<T>(T, IntPtr)

Subtrai um elemento deslocado do ponteiro gerido dado.

Subtract<T>(T, UIntPtr)

Subtrai um elemento deslocado do ponteiro gerido dado.

Subtract<T>(Void*, Int32)

Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs

Importante

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

Subtrai um elemento deslocado do ponteiro não gerido dado.

public:
generic <typename T>
 static void* Subtract(void* source, int elementOffset);
[System.CLSCompliant(false)]
public static void* Subtract<T>(void* source, int elementOffset) where T : allows ref struct;
public static void* Subtract<T>(void* source, int elementOffset);
[System.CLSCompliant(false)]
public static void* Subtract<T>(void* source, int elementOffset);
[<System.CLSCompliant(false)>]
static member Subtract : nativeptr<unit> * int -> nativeptr<unit>
static member Subtract : nativeptr<unit> * int -> nativeptr<unit>

Parâmetros de Tipo Genérico

T

O tipo cujo tamanho será usado como fator de escala para elementOffset.

Parâmetros

source
Void*

O ponteiro não gerido para subtrair o deslocamento de.

elementOffset
Int32

O deslocamento para subtrair.

Devoluções

Void*

Um novo ponteiro não gerido que reflete a subtração do deslocamento especificado do ponteiro de origem.

Atributos

Observações

O elementOffset parâmetro é o número de Telementos de tamanho -(não bytes) a remover do source apontador. Por exemplo, dado um ponteiro de origem ptr, a chamada Unsafe.Subtract<int>(ptr, 20) devolverá um novo ponteiro cujo endereço aponta 80 bytes (= 20 elementos * 4 bytes por elemento) antes de ptr.

Se elementOffset for um valor calculado em vez de um literal codificado fixamente, os chamadores devem considerar a possibilidade de overflow inteiro. Por exemplo, na chamada Unsafe.Subtract<int>(ptr, a * b), o chamador deve garantir que o valor a * b intermédio não ultrapassa os limites de Int32.

Aplica-se a

Subtract<T>(T, Int32)

Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs

Subtrai um deslocamento do ponteiro gerido dado.

public:
generic <typename T>
 static T % Subtract(T % source, int elementOffset);
public static ref T Subtract<T>(ref T source, int elementOffset) where T : allows ref struct;
public static ref T Subtract<T>(ref T source, int elementOffset);
static member Subtract : 'T * int -> 'T
Public Shared Function Subtract(Of T) (ByRef source As T, elementOffset As Integer) As T

Parâmetros de Tipo Genérico

T

O tipo elemental do ponteiro gerido.

Parâmetros

source
T

O ponteiro gerido para subtrair o deslocamento de.

elementOffset
Int32

O deslocamento para subtrair.

Devoluções

T

Um novo ponteiro gerido que reflete a subtração do deslocamento especificado do ponteiro de origem.

Observações

O elementOffset parâmetro é o número de Telementos de tamanho -size (não bytes) a subtrair do source ponteiro. Por exemplo, dado um ponteiro de origem ptr do tipo ref int, a chamada Unsafe.Subtract<int>(ref ptr, 20) devolverá um novo ponteiro cujo endereço aponta 80 bytes (= 20 elementos * 4 bytes por elemento) antes de ptr.

Se elementOffset for um valor calculado em vez de um literal codificado fixamente, os chamadores devem considerar a possibilidade de overflow inteiro. Por exemplo, na chamada Unsafe.Subtract<int>(ref ptr, a * b), o chamador deve garantir que o valor a * b intermédio não ultrapassa os limites de Int32.

Aplica-se a

Subtract<T>(T, IntPtr)

Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs

Subtrai um elemento deslocado do ponteiro gerido dado.

public:
generic <typename T>
 static T % Subtract(T % source, IntPtr elementOffset);
public static ref T Subtract<T>(ref T source, IntPtr elementOffset) where T : allows ref struct;
public static ref T Subtract<T>(ref T source, IntPtr elementOffset);
static member Subtract : 'T * nativeint -> 'T
Public Shared Function Subtract(Of T) (ByRef source As T, elementOffset As IntPtr) As T

Parâmetros de Tipo Genérico

T

O tipo elemental do ponteiro gerido.

Parâmetros

source
T

O ponteiro gerido para subtrair o deslocamento de.

elementOffset
IntPtr

nativeint

O deslocamento para subtrair.

Devoluções

T

Um novo ponteiro gerido que reflete a subtração do deslocamento especificado do ponteiro de origem.

Observações

O elementOffset parâmetro é o número de Telementos de tamanho -size (não bytes) a subtrair do source ponteiro. Por exemplo, dado um ponteiro de origem ptr do tipo ref int, a chamada Unsafe.Subtract<int>(ref ptr, (nint)20) devolverá um novo ponteiro cujo endereço aponta 80 bytes (= 20 elementos * 4 bytes por elemento) antes de ptr.

Se elementOffset for um valor calculado em vez de um literal codificado fixamente, os chamadores devem considerar a possibilidade de overflow inteiro. Por exemplo, na chamada Unsafe.Subtract<int>(ref ptr, a * b), o chamador deve garantir que o valor a * b intermédio não ultrapassa os limites de IntPtr.

Aplica-se a

Subtract<T>(T, UIntPtr)

Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs
Origem:
Unsafe.cs

Importante

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

Subtrai um elemento deslocado do ponteiro gerido dado.

public:
generic <typename T>
 static T % Subtract(T % source, UIntPtr elementOffset);
[System.CLSCompliant(false)]
public static ref T Subtract<T>(ref T source, UIntPtr elementOffset) where T : allows ref struct;
public static ref T Subtract<T>(ref T source, nuint elementOffset);
[System.CLSCompliant(false)]
public static ref T Subtract<T>(ref T source, UIntPtr elementOffset);
[<System.CLSCompliant(false)>]
static member Subtract : 'T * unativeint -> 'T
static member Subtract : 'T * unativeint -> 'T
Public Shared Function Subtract(Of T) (ByRef source As T, elementOffset As UIntPtr) As T

Parâmetros de Tipo Genérico

T

O tipo elemental do ponteiro gerido.

Parâmetros

source
T

O ponteiro gerido para subtrair o deslocamento de.

elementOffset
UIntPtr

nuint

unativeint

O deslocamento para subtrair.

Devoluções

T

Um novo ponteiro gerido que reflete a subtração do deslocamento especificado do ponteiro de origem.

Atributos

Observações

O elementOffset parâmetro é o número de Telementos de tamanho -size (não bytes) a subtrair do source ponteiro. Por exemplo, dado um ponteiro de origem ptr do tipo ref int, a chamada Unsafe.Subtract<int>(ref ptr, (nuint)20) devolverá um novo ponteiro cujo endereço aponta 80 bytes (= 20 elementos * 4 bytes por elemento) antes de ptr.

Se elementOffset for um valor calculado em vez de um literal codificado fixamente, os chamadores devem considerar a possibilidade de overflow inteiro. Por exemplo, na chamada Unsafe.Subtract<int>(ref ptr, a * b), o chamador deve garantir que o valor a * b intermédio não ultrapassa os limites de UIntPtr.

Aplica-se a