BitVector32.CreateSection Methode

Definitie

Hiermee maakt u een reeks secties die kleine gehele getallen bevatten.

Overloads

Name Description
CreateSection(Int16)

Hiermee maakt u de eerste BitVector32.Section in een reeks secties die kleine gehele getallen bevatten.

CreateSection(Int16, BitVector32+Section)

Hiermee maakt u een nieuwe BitVector32.Section na de opgegeven BitVector32.Section in een reeks secties die kleine gehele getallen bevatten.

Voorbeelden

In het volgende codevoorbeeld wordt een BitVector32 verzameling secties gebruikt.

using System;
using System.Collections.Specialized;

public class SamplesBitVector32  {

   public static void Main()  {

      // Creates and initializes a BitVector32.
      BitVector32 myBV = 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.
      BitVector32.Section mySect1 = BitVector32.CreateSection( 6 );
      BitVector32.Section mySect2 = BitVector32.CreateSection( 3, mySect1 );
      BitVector32.Section mySect3 = BitVector32.CreateSection( 1, mySect2 );
      BitVector32.Section mySect4 = BitVector32.CreateSection( 15, mySect3 );

      // Displays the values of the sections.
      Console.WriteLine( "Initial values:" );
      Console.WriteLine( "\tmySect1: {0}", myBV[mySect1] );
      Console.WriteLine( "\tmySect2: {0}", myBV[mySect2] );
      Console.WriteLine( "\tmySect3: {0}", myBV[mySect3] );
      Console.WriteLine( "\tmySect4: {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( "\tInitial:    \t{0}", myBV.ToString() );
      myBV[mySect1] = 5;
      Console.WriteLine( "\tmySect1 = 5:\t{0}", myBV.ToString() );
      myBV[mySect2] = 3;
      Console.WriteLine( "\tmySect2 = 3:\t{0}", myBV.ToString() );
      myBV[mySect3] = 1;
      Console.WriteLine( "\tmySect3 = 1:\t{0}", myBV.ToString() );
      myBV[mySect4] = 9;
      Console.WriteLine( "\tmySect4 = 9:\t{0}", myBV.ToString() );

      // Displays the values of the sections.
      Console.WriteLine( "New values:" );
      Console.WriteLine( "\tmySect1: {0}", myBV[mySect1] );
      Console.WriteLine( "\tmySect2: {0}", myBV[mySect2] );
      Console.WriteLine( "\tmySect3: {0}", myBV[mySect3] );
      Console.WriteLine( "\tmySect4: {0}", myBV[mySect4] );
   }
}

/*
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

*/
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

End Class


' 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

CreateSection(Int16)

Hiermee maakt u de eerste BitVector32.Section in een reeks secties die kleine gehele getallen bevatten.

public:
 static System::Collections::Specialized::BitVector32::Section CreateSection(short maxValue);
public static System.Collections.Specialized.BitVector32.Section CreateSection(short maxValue);
static member CreateSection : int16 -> System.Collections.Specialized.BitVector32.Section
Public Shared Function CreateSection (maxValue As Short) As BitVector32.Section

Parameters

maxValue
Int16

Een 16-bits geheel getal dat de maximumwaarde voor het nieuwe BitVector32.Sectiongetal aangeeft.

Retouren

Een BitVector32.Section die een getal van nul tot maxValueen met nul kan bevatten.

Uitzonderingen

maxValue is kleiner dan 1.

Opmerkingen

A BitVector32.Section is een venster in de BitVector32 en bestaat uit het kleinste aantal opeenvolgende bits dat de maximumwaarde kan bevatten die is opgegeven in CreateSection. Een sectie met een maximumwaarde van 1 bestaat bijvoorbeeld uit slechts één bit, terwijl een sectie met een maximumwaarde van 5 uit drie bits bestaat. U kunt een BitVector32.Section met een maximumwaarde van 1 maken om te fungeren als een Booleaanse waarde, waardoor u gehele getallen en Booleaanse waarden in hetzelfde BitVector32kunt opslaan.

Als er al secties bestaan in de BitVector32secties, zijn deze secties nog steeds toegankelijk. Overlappende secties kunnen echter onverwachte resultaten veroorzaken.

Deze methode is een O(1)-bewerking.

Van toepassing op

CreateSection(Int16, BitVector32+Section)

Hiermee maakt u een nieuwe BitVector32.Section na de opgegeven BitVector32.Section in een reeks secties die kleine gehele getallen bevatten.

public:
 static System::Collections::Specialized::BitVector32::Section CreateSection(short maxValue, System::Collections::Specialized::BitVector32::Section previous);
public static System.Collections.Specialized.BitVector32.Section CreateSection(short maxValue, System.Collections.Specialized.BitVector32.Section previous);
static member CreateSection : int16 * System.Collections.Specialized.BitVector32.Section -> System.Collections.Specialized.BitVector32.Section
Public Shared Function CreateSection (maxValue As Short, previous As BitVector32.Section) As BitVector32.Section

Parameters

maxValue
Int16

Een 16-bits geheel getal dat de maximumwaarde voor het nieuwe BitVector32.Sectiongetal aangeeft.

Retouren

Een BitVector32.Section die een getal van nul tot maxValueen met nul kan bevatten.

Uitzonderingen

maxValue is kleiner dan 1.

previous bevat de laatste bit in de BitVector32.

– of –

maxValue is groter dan de hoogste waarde die kan worden vertegenwoordigd door het aantal bits na previous.

Opmerkingen

A BitVector32.Section is een venster in de BitVector32 en bestaat uit het kleinste aantal opeenvolgende bits dat de maximumwaarde kan bevatten die is opgegeven in CreateSection. Een sectie met een maximumwaarde van 1 bestaat bijvoorbeeld uit slechts één bit, terwijl een sectie met een maximumwaarde van 5 uit drie bits bestaat. U kunt een BitVector32.Section met een maximumwaarde van 1 maken om te fungeren als een Booleaanse waarde, waardoor u gehele getallen en Booleaanse waarden in hetzelfde BitVector32kunt opslaan.

Als er al secties aanwezig zijn previous in de BitVector32secties, zijn deze secties nog steeds toegankelijk. Overlappende secties kunnen echter onverwachte resultaten veroorzaken.

Deze methode is een O(1)-bewerking.

Van toepassing op