UIntPtr.Subtraction(UIntPtr, Int32) Оператор

Определение

Вычитает смещение из целого числа без знака.

public:
 static UIntPtr operator -(UIntPtr pointer, int offset);
public static UIntPtr operator -(UIntPtr pointer, int offset);
static member ( - ) : unativeint * int -> unativeint
Public Shared Operator - (pointer As UIntPtr, offset As Integer) As UIntPtr

Параметры

pointer
UIntPtr

unativeint

Целое число без знака для вычитания смещения из.

offset
Int32

Смещение, вычитаемое.

Возвращаемое значение

UIntPtr

unativeint

Новое целое число без знака, которое отражает вычитание offset из pointer.

Комментарии

Метод Subtraction определяет операцию вычитания для UIntPtr объектов. Он включает код, например следующий.

int[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
UIntPtr ptr = (UIntPtr) arr[arr.GetUpperBound(0)];
for (int ctr = 0; ctr <= arr.GetUpperBound(0); ctr++)
{
   UIntPtr newPtr = ptr - ctr;
   Console.Write("{0}   ", newPtr);
}
let arr = [| 1; 2; 3; 4; 5; 6; 7; 8; 9; 10 |]
let ptr = UIntPtr(uint arr[arr.GetUpperBound 0])
for i = 0 to arr.GetUpperBound 0 do
    let newPtr = ptr - UIntPtr(uint i)
    printf $"{newPtr}   "
Dim arr() As Integer = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
Dim ptr As UIntPtr = CType(arr(arr.GetUpperBound(0)), UIntPtr)
For ctr As Integer= 0 To arr.GetUpperBound(0)
   Dim newPtr As UIntPtr = UIntPtr.Subtract(ptr, ctr)
   Console.Write("{0}   ", newPtr)
Next

Языки, которые не поддерживают пользовательские операторы, могут Subtract вызывать метод.

Операция вычитания не создает исключение, если результат слишком мал, чтобы представить как целое число без знака в процессе выполнения. Вместо этого она выполняется в незаверяемом контексте.

В C# начиная с версии 11 и при целевой среде выполнения .NET 7 или более поздней, этот API доступен только через отражение. Оператор вычитания непосредственно распознается языком и будет следовать нормальному поведению языка для операций вычитания, включая переполнение в checked контексте, если результат слишком мал, чтобы представить.

Применяется к

См. также раздел