Provides a simple structure that stores Boolean values and small integers in 32 bits of memory.
Assembly: System (in System.dll)
Thetype exposes the following members.
|CreateMask()||Creates the first mask in a series of masks that can be used to retrieve individual bits in a that is set up as bit flags.|
|CreateMask(Int32)||Creates an additional mask following the specified mask in a series of masks that can be used to retrieve individual bits in a that is set up as bit flags.|
|CreateSection(Int16)||Creates the first BitVector32.Section in a series of sections that contain small integers.|
|CreateSection(Int16, BitVector32.Section)||Creates a new BitVector32.Section following the specified BitVector32.Section in a series of sections that contain small integers.|
|Equals||Determines whether the specified object is equal to the . (Overrides ValueType.Equals(Object).)|
|Finalize||Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)|
|GetHashCode||Serves as a hash function for the . (Overrides ValueType.GetHashCode().)|
|GetType||Gets the Type of the current instance. (Inherited from Object.)|
|MemberwiseClone||Creates a shallow copy of the current Object. (Inherited from Object.)|
|ToString()||Returns a string that represents the current . (Overrides ValueType.ToString().)|
|ToString(BitVector32)||Returns a string that represents the specified .|
is more efficient than BitArray for Boolean values and small integers that are used internally. A BitArray can grow indefinitely as needed, but it has the memory and performance overhead that a class instance requires. In contrast, a uses only 32 bits.
A structure can be set up to contain either sections for small integers or bit flags for Booleans, but not both. A BitVector32.Section is a window into the 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 .
Some members can be used for a that is set up as sections, while other members can be used for one that is set up as bit flags. For example, the BitVector32.Item property is the indexer for a that is set up as sections, and the BitVector32.Item property is the indexer for a that is set up as bit flags. CreateMask creates a series of masks that can be used to access individual bits in a that is set up as bit flags.
Using a mask on a that is set up as sections might cause unexpected results.
The following code example uses a as a collection of bit flags.
The following code example uses a as a collection of sections.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.