Iterieren durch eine std::queue
Die Standardbibliothek von C stellt eine Reihe von Containeradaptern bereit, von denen einer die Warteschlange ist. Wie in der verlinkten Dokumentation angegeben, verwendet dieser Adapter eine Deque für den zugrunde liegenden Speicher, die laut derselben Dokumentationsseite „Iteratoren mit wahlfreiem Zugriff“ bereitstellt. Allerdings werden diese Iteratoren nicht durch die Klasse std::queue zugänglich gemacht, und es gibt keine Standardmethode, dies zu umgehen. Dies liegt daran, dass:
Der Zweck der Standard-Containeradapter besteht darin, eine minimale Schnittstelle bereitzustellen.
Das bedeutet, dass std::queue zum Ein- und Ausreihen von Elementen und nicht zum Iterieren verwendet werden sollte über seinen Inhalt. Wenn Sie eine Warteschlange durchlaufen müssen, möchten Sie möglicherweise direkt eine Deque verwenden. Es stellt Ihnen alle Funktionen einer Warteschlange zur Verfügung und ermöglicht Ihnen auch, darüber zu iterieren.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3