وظيفة Vector Resize () في C ++

Vector Resize Function C



المتجه هو فئة مفيدة جدًا من C ++ لإنشاء المصفوفة الديناميكية. يمكن تغيير حجم المتجه في أي وقت لحل أي مشكلة في البرمجة. توجد العديد من الوظائف المضمنة في C ++ للقيام بأنواع مختلفة من المهام في حاوية ناقل. وظيفة resize () هي واحدة منها. يتم استخدامه لتغيير حجم المتجه. يمكن زيادة حجم المتجه أو إنقاصه باستخدام هذه الوظيفة. تم شرح استخدامات الدالة resize () في ناقل C ++ في هذا البرنامج التعليمي.

بناء الجملة:

يمكن استخدام وظيفة resize () بعدة طرق. فيما يلي تركيبين لهذه الوظيفة.







فارغتغيير الحجم(size_type n)

إذا كانت قيمة n أصغر من الحجم الأصلي للكائن المتجه ، فسيتم تقليل حجم المتجه. إذا كانت قيمة n أكبر من الحجم الأصلي للمتجه ، فسيتم زيادة حجم المتجه. إذا كانت قيمة n تساوي الحجم الأصلي للمتجه ، فسيظل حجم المتجه دون تغيير.



فارغتغيير الحجم(size_type n ،مقدار ثابتنوع القيمة&القيمة)؛

إذا تم استخدام الوسيطة الثانية في هذه الدالة ، فستتم إضافة قيمة الوسيطة في نهاية المتجه.



كل من دالة resize () لا تُرجع شيئًا.





المتطلبات المسبقة:

قبل التحقق من أمثلة هذا البرنامج التعليمي ، يجب عليك التحقق من تثبيت برنامج التحويل البرمجي g ++ أم لا في النظام. إذا كنت تستخدم Visual Studio Code ، فقم بتثبيت الملحقات الضرورية لتجميع التعليمات البرمجية المصدر لـ C ++ لإنشاء التعليمات البرمجية القابلة للتنفيذ. هنا ، تم استخدام تطبيق Visual Studio Code لتجميع وتنفيذ كود C ++. تم عرض الاستخدامات المختلفة لهذه الوظيفة في الجزء التالي من هذا البرنامج التعليمي باستخدام أمثلة مختلفة.

مثال 1: إنقاص حجم المتجه

قم بإنشاء ملف C ++ مع الكود التالي للتحقق من كيفية تقليل حجم المتجه باستخدام وظيفة resize (). تم التصريح عن متجه من 4 قيم سلسلة في الكود. تم إدخال ثلاث قيم جديدة في المتجه بعد طباعة الحجم الأصلي للمتجه. تمت طباعة حجم المتجه مرة أخرى بعد الإدخال. تم استخدام وظيفة resize () لتقليل حجم المتجه إلى 5. تمت طباعة حجم المتجه مرة أخرى بعد تقليل الحجم.



// تضمين المكتبات الضرورية

#يشمل

#يشمل

استخدام مساحة الاسمساعات؛

intالأساسية()

{

// قم بتعريف متجه لقيم السلسلة

المتجه<سلسلة>الأطعمة= {'كيك'و'معجنات'و'بيتزا'و'برجر'}؛

كلفة << 'الحجم الحالي للمتجه:' <<الأطعمة.بحجم() <<endl؛

// أضف ثلاثة عناصر

الأطعمة.إدفع إلى الخلف('معكرونة')؛

الأطعمة.إدفع إلى الخلف('بطاطا مقلية')؛

الأطعمة.إدفع إلى الخلف('دجاج مقلي')؛

كلفة << 'الحجم الحالي للمتجه بعد الإدراج:' <<الأطعمة.بحجم() <<endl؛

// تغيير حجم المتجه

الأطعمة.تغيير الحجم(5)؛

كلفة << 'الحجم الحالي للمتجه بعد تغيير الحجم:' <<الأطعمة.بحجم() <<endl؛

إرجاع 0؛

}

انتاج:

سيظهر الإخراج التالي بعد تنفيذ الكود أعلاه. يوضح الإخراج أن الحجم الأصلي للمتجه كان 4 ، وأصبح الحجم 7 بعد إدخال 3 قيم جديدة ، وأصبح الحجم 5 بعد استخدام وظيفة تغيير الحجم ().

مثال 2: زيادة حجم المتجه

قم بإنشاء ملف C ++ مع الكود التالي للتحقق من كيفية زيادة حجم المتجه باستخدام وظيفة resize (). تم التصريح عن ناقل مكون من 5 أعداد صحيحة في الكود. تمت طباعة حجم المتجه الأصلي قبل زيادة حجم المتجه باستخدام وظيفة تغيير الحجم (). تمت طباعة حجم المتجه مرة أخرى بعد تغيير الحجم إلى 8. بعد ذلك ، تم إدخال 5 أرقام في نهاية المتجه ، وتمت طباعة حجم المتجه المعدل مرة أخرى.

// تضمين المكتبات الضرورية

#يشمل

#يشمل

استخدام مساحة الاسمساعات؛

intالأساسية()

{

// نعلن متجهًا لقيم الأعداد الصحيحة

المتجه<int>أعداد= {10و90وعشرينو80و30 }؛

كلفة << 'الحجم الحالي للمتجه:' <<أعداد.بحجم() <<endl؛

// تغيير حجم المتجه

أعداد.تغيير الحجم(8)؛

كلفة << 'الحجم الحالي للمتجه بعد تغيير الحجم:' <<أعداد.بحجم() <<endl؛

// أضف 5 أرقام في المتجه

أعداد.إدفع إلى الخلف(60)؛

أعداد.إدفع إلى الخلف(40)؛

أعداد.إدفع إلى الخلف(خمسون)؛

أعداد.إدفع إلى الخلف(70)؛

أعداد.إدفع إلى الخلف(100)؛

كلفة << 'الحجم الحالي للمتجه بعد الإدراج:' <<أعداد.بحجم() <<endl؛

إرجاع 0؛

}

انتاج:

سيظهر الإخراج التالي بعد تنفيذ الكود أعلاه. يوضح الإخراج أن الحجم الأصلي للمتجه كان 5 ، وأصبح الحجم 8 بعد تغيير حجم المتجه ، وأصبح الحجم 13 بعد إدخال 5 عناصر في المتجه.

مثال 3: تغيير حجم المتجه بالقيم

قم بإنشاء ملف C ++ مع التعليمات البرمجية التالية للتحقق من كيفية تغيير حجم المتجه عن طريق إدخال نفس القيمة عدة مرات. تم الإعلان عن متجه من 5 أرقام عائمة في الكود. تم استخدام وظيفة resize () لتغيير حجم المتجه إلى 7 وإدخال الرقم 5.55 في المتجه مرتين. ستتم طباعة محتوى المتجه الأصلي والمتجه المعدل بعد تنفيذ الكود.

// تغيير حجم المتجه

#يشمل

#يشمل

استخدام مساحة الاسمساعات؛

intالأساسية()

{

// قم بتعريف متجه القيم العائمة

المتجه<تطفو>أعداد= { 7.89و3.98و5.56و9.65و2.33 }؛

كلفة << قيم المتجه قبل تغيير الحجم:ن'؛

// كرر المتجه باستخدام حلقة لطباعة القيم

ل(intأنا= 0؛أنا<أعداد.بحجم()؛ ++أنا)

كلفة <<أعداد[أنا] << '؛

كلفة << 'ن'؛

// تغيير حجم المتجه بالقيم

أعداد.تغيير الحجم(7و5.55)؛

كلفة << قيم المتجه بعد تغيير الحجم:ن'؛

// كرر المتجه باستخدام حلقة لطباعة القيم

ل(intأنا= 0؛أنا<أعداد.بحجم()؛ ++أنا)

كلفة <<أعداد[أنا] << '؛

كلفة << 'ن'؛

إرجاع 0؛

}

انتاج:

سيظهر الإخراج التالي بعد تنفيذ الكود أعلاه. يوضح الإخراج أنه تم إدخال الرقم 5.55 مرتين في نهاية المتجه.

استنتاج:

تم وصف استخدام وظيفة resize () لتغيير حجم المتجه بقيمة أو بدون قيمة في هذا البرنامج التعليمي باستخدام أمثلة بسيطة. سيتمكن مبرمج C ++ الجديد من تغيير حجم المتجه بناءً على المتطلبات باستخدام وظيفة resize () بعد قراءة هذا البرنامج التعليمي.