Wie kann ich den Inhalt von std :: stack ausdrucken und seine Größe zurückgeben?

7

Wie kann ich in c ++ den Inhalt meines Stapels ausdrucken und seine Größe zurückgeben?

%Vor%     
John 27.09.2012, 23:25
quelle

4 Antworten

15

Sie können eine Kopie des Stapels erstellen und die Elemente nacheinander ausgeben, um sie auszugeben:

%Vor%

Ausgabe

%Vor%

Sieh es hier live: Ссылка

    
sehe 27.09.2012, 23:32
quelle
3

Die Elemente von std::stack können nur dann gedruckt werden, wenn sie geblättert werden, indem Sie einen Adapter schreiben, der std::stack erweitert ( hier ist ein Beispiel ). Andernfalls sollten Sie Ihren Stack durch std::deque ersetzen.

    
jweyrich 27.09.2012 23:43
quelle
2

Sowohl std::stack als auch std::queue sind Wrapper um einen allgemeinen Container. Auf diesen Container kann als protected member c zugegriffen werden. Mit c können Sie effizienten Zugriff auf die Elemente erhalten; Andernfalls können Sie einfach den Stapel oder die Warteschlange kopieren und auf die Elemente der Kopie zugreifen.

Beispiel für die Verwendung von c :

%Vor%     
Cheers and hth. - Alf 28.09.2012 00:01
quelle
0

Ссылка für die Größe ist es einfach zu bedienen:

%Vor%

Im übrigen habe ich im doc nichts gesehen, aber Sie sollten den Inhalt Ihres Stapels drucken, wenn Sie ihn drücken, oder eine Liste damit haben, um das Element zu speichern, nur um es zu drucken, Vergessen Sie nicht, es zu löschen, wenn Sie mit dem Testen fertig sind

    
Morendo 27.09.2012 23:32
quelle

Tags und Links