BitVector32.CreateMask Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Создает набор масок, который можно использовать для получения отдельных разрядов в структуре BitVector32, которая построена в виде одноразрядных флагов.
Перегрузки
CreateMask() |
Создает первую маску в наборе масок, которую можно использовать для получения отдельных разрядов в структуре BitVector32, которая построена в виде одноразрядных флагов. |
CreateMask(Int32) |
Создает дополнительную маску, следующую за указанной маской в наборе масок, которую можно использовать для получения отдельных разрядов в структуре BitVector32, построенной в виде одноразрядных флагов. |
Примеры
В следующем примере кода показано, как создавать и использовать маски.
#using <system.dll>
using namespace System;
using namespace System::Collections::Specialized;
int main()
{
// Creates and initializes a BitVector32 with all bit flags set to FALSE.
BitVector32 myBV;
// Creates masks to isolate each of the first five bit flags.
int myBit1 = BitVector32::CreateMask();
int myBit2 = BitVector32::CreateMask( myBit1 );
int myBit3 = BitVector32::CreateMask( myBit2 );
int myBit4 = BitVector32::CreateMask( myBit3 );
int myBit5 = BitVector32::CreateMask( myBit4 );
Console::WriteLine( "Initial: \t {0}", myBV );
// Sets the third bit to TRUE.
myBV[ myBit3 ] = true;
Console::WriteLine( "myBit3 = TRUE \t {0}", myBV );
// Combines two masks to access multiple bits at a time.
myBV[ myBit4 + myBit5 ] = true;
Console::WriteLine( "myBit4 + myBit5 = TRUE \t {0}", myBV );
myBV[ myBit1 | myBit2 ] = true;
Console::WriteLine( "myBit1 | myBit2 = TRUE \t {0}", myBV );
}
/*
This code produces the following output.
Initial: BitVector32 {00000000000000000000000000000000}
myBit3 = TRUE BitVector32 {00000000000000000000000000000100}
myBit4 + myBit5 = TRUE BitVector32 {00000000000000000000000000011100}
myBit1 | myBit2 = TRUE BitVector32 {00000000000000000000000000011111}
*/
using System;
using System.Collections.Specialized;
public class SamplesBitVector32 {
public static void Main() {
// Creates and initializes a BitVector32 with all bit flags set to FALSE.
BitVector32 myBV = new BitVector32( 0 );
// Creates masks to isolate each of the first five bit flags.
int myBit1 = BitVector32.CreateMask();
int myBit2 = BitVector32.CreateMask( myBit1 );
int myBit3 = BitVector32.CreateMask( myBit2 );
int myBit4 = BitVector32.CreateMask( myBit3 );
int myBit5 = BitVector32.CreateMask( myBit4 );
Console.WriteLine( "Initial: \t{0}", myBV.ToString() );
// Sets the third bit to TRUE.
myBV[myBit3] = true;
Console.WriteLine( "myBit3 = TRUE \t{0}", myBV.ToString() );
// Combines two masks to access multiple bits at a time.
myBV[myBit4 + myBit5] = true;
Console.WriteLine( "myBit4 + myBit5 = TRUE \t{0}", myBV.ToString() );
myBV[myBit1 | myBit2] = true;
Console.WriteLine( "myBit1 | myBit2 = TRUE \t{0}", myBV.ToString() );
}
}
/*
This code produces the following output.
Initial: BitVector32{00000000000000000000000000000000}
myBit3 = TRUE BitVector32{00000000000000000000000000000100}
myBit4 + myBit5 = TRUE BitVector32{00000000000000000000000000011100}
myBit1 | myBit2 = TRUE BitVector32{00000000000000000000000000011111}
*/
Imports System.Collections.Specialized
Public Class SamplesBitVector32
Public Shared Sub Main()
' Creates and initializes a BitVector32 with all bit flags set to FALSE.
Dim myBV As New BitVector32(0)
' Creates masks to isolate each of the first five bit flags.
Dim myBit1 As Integer = BitVector32.CreateMask()
Dim myBit2 As Integer = BitVector32.CreateMask(myBit1)
Dim myBit3 As Integer = BitVector32.CreateMask(myBit2)
Dim myBit4 As Integer = BitVector32.CreateMask(myBit3)
Dim myBit5 As Integer = BitVector32.CreateMask(myBit4)
Console.WriteLine("Initial: " + ControlChars.Tab + "{0}", myBV.ToString())
' Sets the third bit to TRUE.
myBV(myBit3) = True
Console.WriteLine("myBit3 = TRUE " + ControlChars.Tab + "{0}", myBV.ToString())
' Combines two masks to access multiple bits at a time.
myBV((myBit4 + myBit5)) = True
Console.WriteLine("myBit4 + myBit5 = TRUE " + ControlChars.Tab + "{0}", myBV.ToString())
myBV((myBit1 Or myBit2)) = True
Console.WriteLine("myBit1 | myBit2 = TRUE " + ControlChars.Tab + "{0}", myBV.ToString())
End Sub
End Class
' This code produces the following output.
'
' Initial: BitVector32{00000000000000000000000000000000}
' myBit3 = TRUE BitVector32{00000000000000000000000000000100}
' myBit4 + myBit5 = TRUE BitVector32{00000000000000000000000000011100}
' myBit1 | myBit2 = TRUE BitVector32{00000000000000000000000000011111}
CreateMask()
- Исходный код:
- BitVector32.cs
- Исходный код:
- BitVector32.cs
- Исходный код:
- BitVector32.cs
Создает первую маску в наборе масок, которую можно использовать для получения отдельных разрядов в структуре BitVector32, которая построена в виде одноразрядных флагов.
public:
static int CreateMask();
public static int CreateMask ();
static member CreateMask : unit -> int
Public Shared Function CreateMask () As Integer
Возвращаемое значение
Маска, которая изолирует первый одноразрядный флаг в структуре BitVector32.
Комментарии
Используйте для CreateMask()
создания первой маски в ряду и CreateMask(int)
для всех последующих масок.
Можно создать несколько масок для ссылки на один и тот же битовый флаг.
Результирующая маска изолирует только один битовый флаг в BitVector32. Маски можно объединить с помощью побитовой операции OR, чтобы создать маску, которая изолирует несколько битовых флагов в BitVector32.
Использование маски для , настроенной BitVector32 в качестве разделов, может привести к непредвиденным результатам.
Этот метод является операцией O(1).
Применяется к
CreateMask(Int32)
- Исходный код:
- BitVector32.cs
- Исходный код:
- BitVector32.cs
- Исходный код:
- BitVector32.cs
Создает дополнительную маску, следующую за указанной маской в наборе масок, которую можно использовать для получения отдельных разрядов в структуре BitVector32, построенной в виде одноразрядных флагов.
public:
static int CreateMask(int previous);
public static int CreateMask (int previous);
static member CreateMask : int -> int
Public Shared Function CreateMask (previous As Integer) As Integer
Параметры
- previous
- Int32
Маска, которая указывает на предыдущий одноразрядный флаг.
Возвращаемое значение
Маска, которая изолирует одноразрядный флаг, следующий за тем, на который указывает параметр previous
в структуре BitVector32.
Исключения
Параметр previous
указывает на последний одноразрядный флаг в структуре BitVector32.
Комментарии
Используйте для CreateMask()
создания первой маски в ряду и CreateMask(int)
для всех последующих масок.
Можно создать несколько масок для ссылки на один и тот же битовый флаг.
Результирующая маска изолирует только один битовый флаг в BitVector32. Маски можно объединить с помощью побитовой операции OR, чтобы создать маску, которая изолирует несколько битовых флагов в BitVector32.
Использование маски для , настроенной BitVector32 в качестве разделов, может привести к непредвиденным результатам.
Этот метод является операцией O(1).