English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C ++ empty()函数的作用是:检查集合容器是否为空。如果集合容器为空(size为0),则返回true,否则返回false。
bool empty() const; // 直到 C++ 11 bool empty const noexcept; //从 C++ 11 开始
没有
它返回真如果设定的容器是空的(大小为0),否则返回假。
不变。
没有变化。
容器被访问。
同时访问set的元素是安全的。
此函数永远不会引发异常。
让我们看一个简单的示例,以检查集合是否包含任何元素:
#include <set> #include <iostream> using namespace std; int main() { set<int> numbers; cout << "最初, numbers.empty(): " << numbers.empty() << "\n"; numbers = {100, 200, 300}; cout << "\n Après avoir ajouté un élément, numbers.empty(): " << numbers.empty() << "\n"; }
Sortie :
Au début, numbers.empty(): 1 Après avoir ajouté un élément, numbers.empty(): 0
Dans l'exemple ci-dessus, la taille initiale du set est de 0, donc la fonction empty() retourne1(true),retourne 0(false)après avoir ajouté un élément.
Laissez-nous voir un exemple simple pour vérifier si le set est vide :
#include <iostream> #include <set> using namespace std; int main(void) { set<char> s; if (s.empty()) cout << "Le ensemble est vide. " << endl; s = {100}; if (!s.empty()) cout << "Le ensemble n'est pas vide. " << endl; return 0; }
Sortie :
Le ensemble est vide. Le ensemble n'est pas vide.
Dans l'exemple ci-dessus, il utilise l'instruction conditionnelle if. Si le set est vide, il retourne le set vide après avoir ajouté un élément; si le set est vide, il retourne le set non vide après avoir ajouté un élément.
Laissez-nous voir un exemple simple :
#include <iostream> #include <set> using namespace std; int main () { set<int> myset; myset = {100, 200, 300}; while (!myset.empty()) { cout << *myset.begin() << '\n'; myset.erase(*myset.begin()); } return 0; }
Sortie :
100 200 300
Dans l'exemple ci-dessus, il utilise la fonction empty() dans la boucle while pour afficher les éléments du set jusqu'à ce que le set ne soit plus vide.
Laissez-nous voir un exemple simple :
#include <iostream> #include <set> #include <string> using namespace std; int main() { typedef set<int> phoneSet; int number; phoneSet phone; if (phone.empty()) cout << "Le ensemble est vide. Veuillez insérer du contenu ! \n" << endl; cout << "Entrez trois groupes de nombres: \n"; for (int i = 0; i <3; i++) { cin >> number; // Obtenir la valeur phone.insert(number); //Insérer des données dans set } if (!phone.empty()) { cout << "\nListe des numéros de téléphone: \n"; phoneSet::iterator p; for(p = phone.begin(); p!=phone.end(); p++) { cout << (*p << " \n \"; } } return 0; }
Sortie :
L'ensemble est vide. Veuillez insérer du contenu ! Entrez trois ensembles de nombres: 1111 5555 3333 Liste des numéros de téléphone: 1111 3333 5555
Dans l'exemple ci-dessus, le programme crée d'abord un téléphone en utilisant trois ensembles de nombres interagissant, puis vérifie si le téléphone est vide. Si l'ensemble est vide, affichez un message, sinon, affichez tous les numéros de téléphone disponibles dans l'ensemble.