لمعالجة هياكل البيانات هذه في الذاكرة لإجراء بعض العمليات ، نحتاج إلى بعض المتغيرات من أنواع البيانات مثل الأعداد الصحيحة والأحرف والمزدوج وما إلى ذلك.
ستساعدك هذه المقالة في تحليل المتجهات وإخبار عمليات التهيئة المختلفة على المتجهات (بنية البيانات) في C ++.
ما هو Vector في لغة C ++
في C ++ ، لدينا مكتبة قوالب قياسية خاصة بها حاويات مدمجة لفئة المتجهات. Vector هو تخزين جماعي في ذاكرة تخزن العناصر ديناميكيًا مع تقييد من نفس نوع البيانات.
إعلان بسيط عن المتجه في C ++
vector_keyword < بيانات - يكتب > اسم_المتجه ( )على الرغم من أن المتجهات والمصفوفات متشابهة ، إلا أن حجم المتجه يمكن أن يختلف بمرور الوقت. يتم الاحتفاظ بالمكونات في مناطق الذاكرة المقابلة. نتيجة لذلك ، يعتمد حجم المتجه على متطلبات التطبيق قيد التشغيل. من الضروري إضافة ملف رأس مع توجيه ما قبل المعالج كـ # تضمين <ناقل> قبل استخدام المتجهات في برامج C ++. يعد تنفيذ المتجهات في C ++ أبسط وأسهل بدلاً من المصفوفات.
في C ++ لدينا طرق مختلفة لتهيئة المتجه ، فلنتحدث عنها واحدة تلو الأخرى:
الطريقة الأولى: عن طريق استخدام أسلوب التعبئة في فئة المتجه
# تضمين <ناقل># تضمين
استخدام اسم للمحطة ؛
int رئيسي ( )
{
المتجه < int > شيء ( 10 ) ؛
يملأ ( شيء. يبدأ ( ) و شيء. نهاية ( ) و 0 ) ؛
ل ( int x : شيء )
كوت << x << '' ؛
يعود 0 ؛
}
في هذا الكود ، نستخدم طريقة التعبئة وننشئ متجهًا. تحتوي طريقة التعبئة على كائنين ، أحدهما يبدأ ، والثاني هو النهاية ، ثم نقوم بتمرير قيمة يجب طباعتها.
انتاج |
الطريقة 2: عن طريق استخدام push_back () لدفع القيم واحدًا تلو الآخر
# تضمين# تضمين <ناقل>
استخدام اسم للمحطة ؛
int رئيسي ( )
{
المتجه < int > شيء ؛
شيء. إدفع إلى الخلف ( أحد عشر ) ؛
شيء. إدفع إلى الخلف ( 22 ) ؛
شيء. إدفع إلى الخلف ( 30 ) ؛
شيء. إدفع إلى الخلف ( 4 ) ؛
كوت << 'جميع العناصر الموجودة في المتجهات ... \ن ' ؛
ل ( int أنا = 0 ؛ أنا < شيء. مقاس ( ) ؛ أنا ++ )
{
كوت << شيء [ أنا ] << '' ؛
}
يعود 0 ؛
}
في هذا البرنامج نقوم بتهيئة المتجه الفارغ ثم نعطي قيمًا مثل 11،22،30 لطريقة push_back باستخدامها مرارًا وتكرارًا و 4 ونعرضها باستخدام حلقة.
انتاج |
الطريقة الثالثة: تهيئة المتجه وتهيئته في خطوة واحدة
# تضمين# تضمين <ناقل>
استخدام اسم للمحطة ؛
int رئيسي ( ) {
المتجه < int > شيء { 6 و 22 و 70 و 4 و 9 و أحد عشر } ؛
ل ( int مع : شيء )
كوت << مع << '' ؛
}
في مثال البرنامج أعلاه ، يبدأ البرنامج بالوظيفة الرئيسية حيث نقوم بتهيئة متجهات نوع عدد صحيح ونعطيها قيمًا في نفس الخطوة. ثم نعرض القيم باستخدام حلقة for a.
انتاج |
الطريقة الرابعة: باستخدام المصفوفة
# تضمين# تضمين <ناقل>
استخدام اسم للمحطة ؛
int رئيسي ( )
{
المتجه < int > شيء { 4 و 9 و 10 و 66 و 8 و 7 } ؛
ل ( int أنا : شيء )
كوت << أنا << '' ؛
يعود 0 ؛
}
في هذا الكود ، نقوم بتهيئة متجه من خلال الإعلان عن مصفوفة من 6 عناصر ثم طباعتها باستخدام cout.
انتاج |
الطريقة الخامسة: باستخدام المصفوفة الموجودة بالفعل ونسخها
# تضمين# تضمين <ناقل>
استخدام اسم للمحطة ؛
int رئيسي ( )
{
int ب [ ] = { 1 و 88 و 7 و 6 و أربعة خمسة } ؛
int ال = حجم ( ب ) / حجم ( ب [ 0 ] ) ؛
المتجه < int > شيء ( ب و ب + ال ) ؛
ل ( int أرقام : شيء )
كوت << أرقام << '' ؛
يعود 0 ؛
}
في هذا البرنامج ، نعلن أن المصفوفة هي b مع 5 قيم ثم نضيفها في متجه بواسطة معلمتين ؛ المصفوفة هي الأولى ، والمصفوفة بطولها هي الثانية.
انتاج |
الطريقة 6: عن طريق استخدام التحميل الزائد للمنشئ في Vector
# تضمين <ناقل># تضمين
استخدام اسم للمحطة ؛
int رئيسي ( )
{
المتجه < int > شيء ( 10 و 9 ) ؛
ل ( int x : شيء )
كوت << x << '' ؛
يعود 0 ؛
}
في المثال أعلاه ، استخدمنا متجهًا به تحميل زائد للمُنشئ والذي يقبل معلمتين: أحدهما هو تكرار القيمة والثاني هو الرقم الذي نريد إظهاره ، ومن ثم يكون الإخراج كما يلي.
انتاج |
خاتمة
يتم تعريف المتجهات في مكتبة القوالب القياسية (STL). لاستخدام المتجه ، أولاً ، نحتاج إلى تضمين رأس المتجه في البرنامج. في هذه الكتابة ، رأينا طرقًا مختلفة نقوم من خلالها بتهيئة المتجهات في لغة C ++. يمكن للمطور اختيار أي طريقة حسب الحاجة.