C++ List::empty() 函式



C++ 的std::list::empty()函式用於檢查列表是否為空。

當且僅當當前列表為空時,它返回布林值 true;否則返回 false。在 C++ 中,bool 資料型別與其他程式語言中的布林資料型別一樣,可以取值 true(1) 或 false(0)。它在結果中返回 1 表示 true,返回 0 表示 false 條件。

語法

以下是 C++ std::list::empty() 函式的語法:

bool empty() const;

引數

  • 它不接受任何引數。

返回值

如果列表為空,則此函式返回 true;否則返回 false。

示例 1

如果當前列表不為空,則 empty() 函式返回 0。

在下面的程式中,我們使用 C++ std::list::empty() 函式來驗證當前列表 {1, 2,3 4, 5} 是否為空。

#include<iostream>
#include<list>
using namespace std;

int main(void) {
   //create an integer list
   list<int> lst = {1, 2, 3, 4, 5};
   cout<<"The list elements are: ";
   for(int l: lst){
      cout<<l<<" ";
   }
   cout<<"\nIs list is empty or not? "<<lst.empty();
}

輸出

以下是上述程式的輸出:

The list elements are: 1 2 3 4 5 
Is list is empty or not? 0

示例 2

如果當前列表為空,則 empty() 函式返回 1。

以下是 C++ std::list::empty() 函式的另一個示例,這裡我們建立一個空列表(型別為 char),並使用 empty() 函式嘗試驗證此列表是否為空。

#include<iostream>
#include<list>
using namespace std;

int main(void) {
   list<char> lst = {};
   cout<<"The list elements are: ";
   for(char l: lst){
      cout<<l<<" ";
   }
   cout<<"\nThe list size is: "<<lst.size();
   cout<<"\nIs list is empty or not? "<<lst.empty();
}

輸出

上述程式產生以下輸出:

The list elements are: 
The list size is: 0
Is list is empty or not? 1

示例 3

使用條件語句檢查列表是否為空。

在下面的示例中,我們使用 empty() 函式的結果在條件語句中檢查名為 cities {"Delhi", "Hyderabad", "Lucknow", "Prayagraj"} 的當前列表是否為空。

#include<iostream>
#include<list>
using namespace std;

int main(void) {
   list<string> cities = {"Delhi", "Hyderabad", "Lucknow", "Prayagraj"};
   cout<<"The list elements are: ";
   for(string l: cities){
      cout<<l<<" ";
   }
   cout<<"\nThe list size is: "<<cities.size();
   int res = cities.empty();
   if(res==1){
      cout<<"\nList is an empty list.";
   } else{
      cout<<"\nList is not empty.";
   }
}

輸出

執行上述程式後,它會產生以下輸出:

The list elements are: Delhi Hyderabad Lucknow Prayagraj 
The list size is: 4
List is not empty.

示例 4

在此示例中,我們建立一個名為 marks 的列表,其值為 {80,90,70,95,88,78}。使用 clear() 函式,我們透過刪除所有元素來清除列表,然後我們在條件語句中使用 empty() 函式的結果來驗證列表是否為空。

#include<iostream>
#include<list>
using namespace std;

int main(void) {
   list<int> marks = {80,90,70,95,88,78};
   cout<<"The list elements are: ";
   for(int l: marks){
      cout<<l<<" ";
   }
   cout<<"\nThe list size is: "<<marks.size();
   //clear the list
   marks.clear();
   cout<<"\nAfter clear the list size is: "<<marks.size();
   int res = marks.empty();
   if(res==1){
      cout<<"\nList is an empty list.";
   } else{
      cout<<"\nList is not empty.";
   }
}

輸出

執行上述程式後,它會生成以下輸出:

The list elements are: 80 90 70 95 88 78 
The list size is: 6
After clear the list size is: 0
List is an empty list.
廣告