English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C ++ map size()يستخدم هذا الدالة للبحث عن عدد العناصر الموجودة في حاوية map.
نوع العضوsize_typeهي نوع عدد غير سالب.
size_type size() const; // قبل C++ 11 size_type size() const noexcept; // من C++ 11
لا يوجد
ي�回 أرقام العناصر الموجودة في map.
دعونا نرى مثال بسيط لحساب حجم map.
#include <map> #include <iostream> using namespace std; int main() } map<int, char> num {{1, 'a'}, {3, 'b'}, {5, 'c'}, {7, 'd'}}; cout << "حاوية map num تحتوي " << num.size() << " عناصر.\n"; }
الخروج:
يحتوي حاوية map num على 4 عناصر.
في المثال السابق، يحتوي الم映射 num على 4 عناصر. لذلك، يعود size() إلى 4 عناصر.
دعونا نرى مثال بسيط، حساب حجم البداية لـ map وحجم map بعد إضافة العناصر.
#include <iostream> #include <map> using namespace std; int main(void) { map<char, int> m; cout << "حجم map الأصلي = " << m.size() << endl; m = { {'a', 1}, {'b', 2}, {'c', 3}, {'d', 4}, {'e', 5}, }; cout << "حجم map بعد إدراج العناصر = " << m.size() << endl; return 0; }
الخروج:
حجم map الأصلي = 0 حجم map بعد إدراج العناصر = 5
في المثال السابق، يكون أول map فارغاً. لذلك، سيعود دالة size() 0، ثم 5 بعد إدراج 5 عنصر.
لنرى مثالاً بسيطاً.
#include <iostream> #include <map> using namespace std; int main () } map<char, int> mymap; mymap['x'] = 100; mymap['y'] = 200; mymap['z'] = 300; while (mymap.size()) } cout << mymap.begin()->first << " => " << mymap.begin()->second << '\n'; mymap.erase(mymap.begin()); } return 0; }
الخروج:
x => 100 y => 200 z => 300
في المثال السابق، يتم استخدام دالة size() داخل دائرة while فقط، وطباعة عناصر map حتى حجم map.
لنرى مثالاً بسيطاً.
#include <iostream> #include <map> #include <string> using namespace std; int main() { typedef map<string, int> phoneMap; string name; int number; phoneMap phone; cout << "إدخل ثلاث مجموعات من الأسماء والأرقام: \n"; لـ(int i = 0; i < 3; i++) } cin >> name; cin >> number; phone[name] = number; } cout << "\nحجم map الهاتف هو:" << phone.size(); cout << "\nقائمة أرقام الهاتف: \n"; iterator p; لـ(p = phone.begin(); p != phone.end(); p++) } cout<<(*p).first << " " <<(*p).second <<" \n "; } return 0; }
الخروج:
أدخل ثلاث مجموعات من الأسماء والأرقام: Nikita 1001 Deep 2001 Aashi 3001 حجم قائمة الاتصال هو:3 قائمة الأرقام الهاتفية: Aashi 3001 Deep 2001 Nikita 1001
في المثال أعلاه، يستخدم البرنامج ثلاثة أسماء لإنشاء قائمة الاتصال باستخدام map تفاعليًا. ثم، يعرض حجم قائمة الاتصال وكل الأسماء والرقم الهاتفية المتاحة في map.