Ben daha verimli bir yolu yoktur sanmıyorum. Yığın, bir LIFO bağlamında çalışmak üzere özel olarak tasarlanmış ve aynı anda boşaltılmak üzere tasarlanmamış iyi tanımlanmış bir veri türüdür. Bunun için temel olarak alttaki kaplar olan vector
veya deque
(veya list
) kullanabilirsiniz; Bir stack
aslında bir kap adaptördür. Daha fazla bilgi için lütfen bu C++ Reference'a bakın.
Başka bir seçeneğiniz yoksa ve yığma kullanmak zorundaysanız, yaptığınız gibi yanlış bir şey yoktur. Her iki şekilde de, eğer inşa edilmişlerse, yeni bir boş yığın atadığınızda ya da tüm öğeleri dışarı çıkardığınızda ya da her neyse, elemanlar imha edilmelidir.
Bunun yerine vector
kullanmanızı öneririm;
Sadece daha uygun
olduğunu açıkça
boş
push_back
pop_back geri
- boyutunu (veya yeniden boyutlandırma): Eğer gerçekten ihtiyaç faaliyet göstermektedir Böylece
clear
yöntemini kullanabilirsiniz. vector
kullanmanın gerçekten daha performanslı olduğundan emin değilsiniz; yığın işlemleri temelde aynıdır.
Yığına boş bir yığın atamayı denediniz mi? – krzaq
Hayır, öneriniz için teşekkürler (y) –
Çalıştı, teşekkürler. –