English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La funzione empty() di C++ Stack viene utilizzata per testare se il contenitore è vuoto. In molti casi, prima di estrarre l'elemento reale dallo stack, il programmatore verifica se lo stack contiene effettivamente alcuni elementi. Questo è vantaggioso in termini di archiviazione e costi.
bool empty() const;
Nessun parametro. Poiché questa funzione è utilizzata solo a scopo di test, viene applicata direttamente allo stack. Pertanto, non vengono trasmessi alcuni parametri.
Se il contenitore richiamato è vuoto, questo metodo restituisce "true", altrimenti restituisce "false". Questo metodo è utilizzato solo a scopo di test, quindi il valore restituito è basato sul risultato del test.
//Il seguente programma è stato fornito per verificare se il contenitore è vuoto.
#include <iostream> #include <stack> int main() { std::stack<int> newstack; int sum = 0; for (int j = 1; j <= 10; j++) newstack.push(j); while (!newstack.empty()) { sum += newstack.top(); newstack.pop(); } std::cout << "Il risultato è: " << sum; return 0; } return 0; }
输出:
Il risultato è: 55
//Il seguente programma è stato fornito per verificare se il contenitore è vuoto.
#include <iostream> #include <stack> using namespace std; int main() { std::stack<int> newstack; newstack.push(69); //Controlla se lo stack è vuoto if(newstack.empty()) { cout<<"堆栈为空,插入一些元素以继续前进"; } else { cout<<"元素出现在堆栈中"; } return 0; }
输出:
元素出现在堆栈中
该函数仅用于检测容器是否为空,因此不接受任何参数并且具有恒定的复杂性。
仅访问容器。访问堆栈以检查元素的存在。并非所有元素都可以通过此函数访问,但是可以一眼检查一下容器是否为空或是否存在。
提供了与在底层容器对象上执行的操作相同的保证。