BitVector32.Section Structure
Represents a section of the vector that can contain an integer number.
Assembly: System (in System.dll)
| Name | Description | |
|---|---|---|
![]() | Mask | Gets a mask that isolates this section within the BitVector32. |
![]() | Offset | Gets the offset of this section from the start of the BitVector32. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is the same as the current BitVector32.Section object.(Overrides ValueType.Equals(Object).) |
![]() | Equals(BitVector32.Section) | Determines whether the specified BitVector32.Section object is the same as the current BitVector32.Section object. |
![]() | GetHashCode() | Serves as a hash function for the current BitVector32.Section, suitable for hashing algorithms and data structures, such as a hash table.(Overrides ValueType.GetHashCode().) |
![]() | GetType() | |
![]() | ToString() | Returns a string that represents the current BitVector32.Section.(Overrides ValueType.ToString().) |
![]() ![]() | ToString(BitVector32.Section) | Returns a string that represents the specified BitVector32.Section. |
| Name | Description | |
|---|---|---|
![]() ![]() | Equality(BitVector32.Section, BitVector32.Section) | Determines whether two specified BitVector32.Section objects are equal. |
![]() ![]() | Inequality(BitVector32.Section, BitVector32.Section) | Determines whether two BitVector32.Section objects have different values. |
Use CreateSection to define a new section. A BitVector32.Section is a window into the BitVector32 and is composed of the smallest number of consecutive bits that can contain the maximum value specified in CreateSection. For example, a section with a maximum value of 1 is composed of only one bit, whereas a section with a maximum value of 5 is composed of three bits. You can create a BitVector32.Section with a maximum value of 1 to serve as a Boolean, thereby allowing you to store integers and Booleans in the same BitVector32.
The following code example uses a BitVector32 as a collection of sections.
Imports System Imports System.Collections.Specialized Public Class SamplesBitVector32 Public Shared Sub Main() ' Creates and initializes a BitVector32. Dim myBV As New BitVector32(0) ' Creates four sections in the BitVector32 with maximum values 6, 3, 1, and 15. ' mySect3, which uses exactly one bit, can also be used as a bit flag. Dim mySect1 As BitVector32.Section = BitVector32.CreateSection(6) Dim mySect2 As BitVector32.Section = BitVector32.CreateSection(3, mySect1) Dim mySect3 As BitVector32.Section = BitVector32.CreateSection(1, mySect2) Dim mySect4 As BitVector32.Section = BitVector32.CreateSection(15, mySect3) ' Displays the values of the sections. Console.WriteLine("Initial values:") Console.WriteLine(ControlChars.Tab + "mySect1: {0}", myBV(mySect1)) Console.WriteLine(ControlChars.Tab + "mySect2: {0}", myBV(mySect2)) Console.WriteLine(ControlChars.Tab + "mySect3: {0}", myBV(mySect3)) Console.WriteLine(ControlChars.Tab + "mySect4: {0}", myBV(mySect4)) ' Sets each section to a new value and displays the value of the BitVector32 at each step. Console.WriteLine("Changing the values of each section:") Console.WriteLine(ControlChars.Tab + "Initial: " + ControlChars.Tab + "{0}", myBV.ToString()) myBV(mySect1) = 5 Console.WriteLine(ControlChars.Tab + "mySect1 = 5:" + ControlChars.Tab + "{0}", myBV.ToString()) myBV(mySect2) = 3 Console.WriteLine(ControlChars.Tab + "mySect2 = 3:" + ControlChars.Tab + "{0}", myBV.ToString()) myBV(mySect3) = 1 Console.WriteLine(ControlChars.Tab + "mySect3 = 1:" + ControlChars.Tab + "{0}", myBV.ToString()) myBV(mySect4) = 9 Console.WriteLine(ControlChars.Tab + "mySect4 = 9:" + ControlChars.Tab + "{0}", myBV.ToString()) ' Displays the values of the sections. Console.WriteLine("New values:") Console.WriteLine(ControlChars.Tab + "mySect1: {0}", myBV(mySect1)) Console.WriteLine(ControlChars.Tab + "mySect2: {0}", myBV(mySect2)) Console.WriteLine(ControlChars.Tab + "mySect3: {0}", myBV(mySect3)) Console.WriteLine(ControlChars.Tab + "mySect4: {0}", myBV(mySect4)) End Sub 'Main End Class 'SamplesBitVector32 ' This code produces the following output. ' ' Initial values: ' mySect1: 0 ' mySect2: 0 ' mySect3: 0 ' mySect4: 0 ' Changing the values of each section: ' Initial: BitVector32{00000000000000000000000000000000} ' mySect1 = 5: BitVector32{00000000000000000000000000000101} ' mySect2 = 3: BitVector32{00000000000000000000000000011101} ' mySect3 = 1: BitVector32{00000000000000000000000000111101} ' mySect4 = 9: BitVector32{00000000000000000000001001111101} ' New values: ' mySect1: 5 ' mySect2: 3 ' mySect3: 1 ' mySect4: 9
Available since 10
.NET Framework
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.



