English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تعليمية C++ الأساسية

تحكم في تدفق C++

وظائف C++

مجموعات C++ و 字ورات

هياكل بيانات C++

فئات C++ و أجسام

المؤشرات في C++

التنسيق في C++

تعليمية STL C++

دليل مرجع C++

استخدام C++ set size() و أمثلة

STL Set (الجمع) في C++

C ++ set size()يستخدم هذا الدالة للبحث عن عدد العناصر الموجودة في محرف مجموعة.

النحو

نوع العضويةsize_typeانه نوع عدد غير سالب.

size_type size() const; // قبل C++ 11
size_type size() const noexcept; // بدءًا من C++ 11

الم参数

لا يوجد

القيمة التي تعود

يقوم بتقديم عدد العناصر الموجودة في المجموعة.

معقد

لا يتغير.

صلاحية الم迭代ر

لم يطرأ عليه أي تغيير.

التنافس على البيانات

المجموعة تتم زيارتها.

الوصول إلى عناصر المجموعة آمن.

الأمان من الاستثناء

هذه الوظيفة لن تسبب أي استثناء.

مثال1

لننظر في مثال بسيط لحساب حجم مجموعة:

#include <set>
#include <iostream>
using namespace std;
 
int main()
{ 
    set<char> num {'a', 'b', 'c', 'd'}; 
    cout << \
    return 0;
}

الإخراج:

 مجموعة num تحتوي على 4 عناصر.

في المثال السابق، تحتوي مجموعة num على 4 عناصر. لذا ستعود دالة size() إلى 4 عناصر.

مثال 2

لننظر في مثال بسيط لحساب حجم مجموعة عند بدء والكبير بعد إضافة العناصر:

#include <iostream>
#include <set>
using namespace std;
int main(void) {
   set<int> m;
   cout << \
   m = {1,2,3,4,5,6};
     cout << \
   return 0;
}

الإخراج:

حجم مجموعة set عند بدء = 0
حجم المجموعة بعد إدراج العناصر = 6

في المثال السابق، كان أول مجموعة فارغة، لذا ستعود دالة size() إلى 0، وبعد إدراج 6 عناصر ستعود إلى 6.

مثال 3

استخدام دالة size() داخل دائرة while:

#include <iostream>
#include <set>
using namespace std;
int main ()
{
  set<int> myset = {100,200,300,400};
  while (myset.size())
  {
    cout << *myset.begin()<< '\n';
    myset.erase(myset.begin());
  }
  return 0;
}

الإخراج:

100
200
300
400

في المثال السابق، يتم استخدام دالة size() داخل دائرة while وطباعة عناصر مجموعة حتى حجمها.

مثال 4

لننظر في مثال، حيث يتم حساب حجم مجموعة بناءً على إدخال المستخدم:

#include <iostream>
#include <set>
#include <string>
using namespace std;
int main() {
  typedef set<int> marksSet;
   
   int number;
   
   cout << \
   
   for(int i =0; i<3; i++)
   {
       cin >> number;    // إدخال الرقم
       marks.insert(number);   // إدراج الرقم في المجموعة
   }
   
      cout << \
      cout << "\nقائمة أرقام الهاتف: \n";
      marksSet::iterator p;
      for(p = marks.begin(); p!=marks.end(); p++)
      {
          cout << (*p) << " \n \t ";
      }
    
   return 0;
}

الإخراج:

إدخال ثلاث مجموعات من العلامات: 
78 90 84
حجم مجموعة أرقام الهاتف: 3
قائمة أرقام الهاتف: 
78 
 84 
 90

في الأمثلة أعلاه، يبدأ البرنامج بإنشاء علامة للإعداد التفاعلي. ثم، سيظهر حجم مجموعة العلامات والعناصر المتاحة في المجموعة.

STL Set (الجمع) في C++