Queue.Clear Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odebere všechny objekty z objektu Queue.
public:
virtual void Clear();
public virtual void Clear ();
abstract member Clear : unit -> unit
override this.Clear : unit -> unit
Public Overridable Sub Clear ()
Příklady
Následující příklad ukazuje, jak vymazat hodnoty Queuez .
using namespace System;
using namespace System::Collections;
void PrintValues( Queue^ myQ );
int main()
{
// Creates and initializes a new Queue.
Queue^ myQ = gcnew Queue;
myQ->Enqueue( "The" );
myQ->Enqueue( "quick" );
myQ->Enqueue( "brown" );
myQ->Enqueue( "fox" );
myQ->Enqueue( "jumps" );
// Displays the count and values of the Queue.
Console::WriteLine( "Initially," );
Console::WriteLine( " Count : {0}", myQ->Count );
Console::Write( " Values:" );
PrintValues( myQ );
// Clears the Queue.
myQ->Clear();
// Displays the count and values of the Queue.
Console::WriteLine( "After Clear," );
Console::WriteLine( " Count : {0}", myQ->Count );
Console::Write( " Values:" );
PrintValues( myQ );
}
void PrintValues( Queue^ myQ )
{
IEnumerator^ myEnum = myQ->GetEnumerator();
while ( myEnum->MoveNext() )
{
Object^ myObj = safe_cast<Object^>(myEnum->Current);
Console::Write( " {0}", myObj );
}
Console::WriteLine();
}
/*
This code produces the following output.
Initially,
Count : 5
Values: The quick brown fox jumps
After Clear,
Count : 0
Values:
*/
using System;
using System.Collections;
public class SamplesQueue {
public static void Main() {
// Creates and initializes a new Queue.
Queue myQ = new Queue();
myQ.Enqueue( "The" );
myQ.Enqueue( "quick" );
myQ.Enqueue( "brown" );
myQ.Enqueue( "fox" );
myQ.Enqueue( "jumps" );
// Displays the count and values of the Queue.
Console.WriteLine( "Initially," );
Console.WriteLine( " Count : {0}", myQ.Count );
Console.Write( " Values:" );
PrintValues( myQ );
// Clears the Queue.
myQ.Clear();
// Displays the count and values of the Queue.
Console.WriteLine( "After Clear," );
Console.WriteLine( " Count : {0}", myQ.Count );
Console.Write( " Values:" );
PrintValues( myQ );
}
public static void PrintValues( Queue myQ ) {
foreach ( Object myObj in myQ ) {
Console.Write( " {0}", myObj );
}
Console.WriteLine();
}
}
/*
This code produces the following output.
Initially,
Count : 5
Values: The quick brown fox jumps
After Clear,
Count : 0
Values:
*/
Imports System.Collections
Public Class SamplesQueue
Public Shared Sub Main()
' Creates and initializes a new Queue.
Dim myQ As New Queue()
myQ.Enqueue("The")
myQ.Enqueue("quick")
myQ.Enqueue("brown")
myQ.Enqueue("fox")
myQ.Enqueue("jumps")
' Displays the count and values of the Queue.
Console.WriteLine("Initially,")
Console.WriteLine(" Count : {0}", myQ.Count)
Console.Write(" Values:")
PrintValues(myQ)
' Clears the Queue.
myQ.Clear()
' Displays the count and values of the Queue.
Console.WriteLine("After Clear,")
Console.WriteLine(" Count : {0}", myQ.Count)
Console.Write(" Values:")
PrintValues(myQ)
End Sub
Public Shared Sub PrintValues(myQ As Queue)
Dim myObj As [Object]
For Each myObj In myQ
Console.Write(" {0}", myObj)
Next myObj
Console.WriteLine()
End Sub
End Class
' This code produces the following output.
'
' Initially,
' Count : 5
' Values: The quick brown fox jumps
' After Clear,
' Count : 0
' Values:
Poznámky
Count je nastavená na nulu a uvolní se také odkazy na jiné objekty z prvků kolekce.
Kapacita zůstává beze změny. Pokud chcete resetovat kapacitu Queue, zavolejte TrimToSize. Oříznutí prázdné Queue nastaví kapacitu objektu Queue na výchozí kapacitu.
Tato metoda je O(n)
operace, kde n
je Count.