BitVector32.CreateSection Metodo

Definizione

Crea una serie di sezioni che contengono numeri interi di piccole dimensioni.

Overload

Nome Descrizione
CreateSection(Int16)

Crea la prima BitVector32.Section in una serie di sezioni che contengono numeri interi di piccole dimensioni.

CreateSection(Int16, BitVector32+Section)

Crea un nuovo BitVector32.Section oggetto che segue l'oggetto specificato BitVector32.Section in una serie di sezioni che contengono numeri interi di piccole dimensioni.

Esempio

Nell'esempio di codice seguente viene utilizzato un oggetto BitVector32 come raccolta di sezioni.

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)

Origine:
BitVector32.cs
Origine:
BitVector32.cs
Origine:
BitVector32.cs
Origine:
BitVector32.cs
Origine:
BitVector32.cs

Crea la prima BitVector32.Section in una serie di sezioni che contengono numeri interi di piccole dimensioni.

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

Parametri

maxValue
Int16

Intero con segno a 16 bit che specifica il valore massimo per il nuovo BitVector32.Sectionoggetto .

Valori restituiti

Oggetto BitVector32.Section che può contenere un numero compreso tra zero e maxValue.

Eccezioni

maxValue è minore di 1.

Commenti

È BitVector32.Section una finestra di BitVector32 e è costituita dal numero più piccolo di bit consecutivi che possono contenere il valore massimo specificato in CreateSection. Ad esempio, una sezione con un valore massimo pari a 1 è costituita da un solo bit, mentre una sezione con un valore massimo di 5 è composta da tre bit. È possibile creare un BitVector32.Section oggetto con un valore massimo pari a 1 da usare come valore booleano, consentendo così di archiviare numeri interi e booleani nello stesso BitVector32oggetto .

Se le sezioni esistono già in BitVector32, tali sezioni sono ancora accessibili. Tuttavia, le sezioni sovrapposte potrebbero causare risultati imprevisti.

Questo metodo è un'operazione O(1).

Si applica a

CreateSection(Int16, BitVector32+Section)

Origine:
BitVector32.cs
Origine:
BitVector32.cs
Origine:
BitVector32.cs
Origine:
BitVector32.cs
Origine:
BitVector32.cs

Crea un nuovo BitVector32.Section oggetto che segue l'oggetto specificato BitVector32.Section in una serie di sezioni che contengono numeri interi di piccole dimensioni.

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

Parametri

maxValue
Int16

Intero con segno a 16 bit che specifica il valore massimo per il nuovo BitVector32.Sectionoggetto .

previous
BitVector32.Section

Oggetto precedente BitVector32.Section nell'oggetto BitVector32.

Valori restituiti

Oggetto BitVector32.Section che può contenere un numero compreso tra zero e maxValue.

Eccezioni

maxValue è minore di 1.

previous include il bit finale in BitVector32.

oppure

maxValue è maggiore del valore più alto che può essere rappresentato dal numero di bit dopo previous.

Commenti

È BitVector32.Section una finestra di BitVector32 e è costituita dal numero più piccolo di bit consecutivi che possono contenere il valore massimo specificato in CreateSection. Ad esempio, una sezione con un valore massimo pari a 1 è costituita da un solo bit, mentre una sezione con un valore massimo di 5 è composta da tre bit. È possibile creare un BitVector32.Section oggetto con un valore massimo pari a 1 da usare come valore booleano, consentendo così di archiviare numeri interi e booleani nello stesso BitVector32oggetto .

Se le sezioni esistono già dopo previous in BitVector32, tali sezioni sono ancora accessibili. Tuttavia, le sezioni sovrapposte potrebbero causare risultati imprevisti.

Questo metodo è un'operazione O(1).

Si applica a