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

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

C++ 流程控制

دالة C++

C++ 数组 & 字符串

C++ 数据结构

كلاس & كائن C++

الإشارة C++

الوراثة C++

تعليمية STL C++

دليل مرجعي لـ C++

استخدام دالة C++ Stack push() ومثال

Stack STL C++

يستخدم دالة push() الخاصة بـ C++ Stack لاضافة عنصر جديد إلى أعلى الدفع. إذا كان لدينا مصفوفة من نوع stack، فإنه يمكننا إدراج عنصر جديد في الدفع باستخدام دالة push(). سيتم إدراج العنصر في أعلى الدفع. بناءً على أن الدفع يتبع مبدأ LIFO، سيتم حذف العنصر الأول الذي تم إدراجه في النهاية، والعكس صحيح، لأن الدفع يتبع مبدأ آخر الدخول أولاً الخروج.

القواعد

void push(const value_type& value);

المعامل

value: يوضح هذا المعامل القيمة التي تم تعيين العنصر إليها. يحدد هذا المعامل القيمة للعنصر الجديد المضاف. بعد تنفيذ الدالة، يصبح العنصر "val" العنصر الجديد الأعلى في الدفع.

القيمة

يضيف هذا الدالة العناصر فقط ولا تعود بأي شيء. يمكن اعتبار نوع العودة غير صالح.

مثال 1

//يستخدم هذا البرنامج لعرض استخدام وظيفة push() الخاصة بالدفع إلى الدفع ببساطة.

#include <iostream>
#include <stack>
using namespace std;
int main()
{
         stack<int> newstack;
         for(int j= 0; j<5; j++)
         newstack.push(j);
         cout << "استخراج العناصر من الدفع......";
         while (!newstack.empty())
         {
	   cout<<" " << newstack.top();
	    newstack.pop();
	}
cout<<"\n";
return 0;
}

الإخراج:

استخراج العناصر من الدفع..... 4 3 2 1 0

مثال 2

#include <iostream>
#include <stack>
using namespace std;
int main()
{	
	stack<int> newstack;
	newstack.push(69);
	newstack.push(79);
	newstack.push(80);
	while (!newstack.empty())
	{
		cout<<" " << newstack.top();
		newstack.pop();
	}
	return 0;
}

الإخراج:

90 85 80 79 69

مثال 3

//يستخدم هذا البرنامج لعرض استخدام وظيفة push() الخاصة بالدفع إلى الدفع ببساطة.

#include <iostream>
#include <stack>
using namespace std;
int main()
{
	stack<int> newstack; 
	newstack.push(11);
	newstack.push(22);
	newstack.push(33);
	newstack.push(44);
	cout << "استخراج العناصر...";
	newstack.pop();
	newstack.pop();
	while (!newstack.empty())
	{
		cout << " " << newstack.top();
		newstack.pop();
	}
	 cout<<'\n';
	return 0;
}

الإخراج:

استخراج العناصر... 22 11

مثال 4

//يستخدم هذا البرنامج لعرض استخدام وظيفة push() الخاصة بالدفع إلى الدفع ببساطة.

#include <iostream>
#include <stack>
using namespace std;
int main()
{
	stack<int> أ, ب;
	a.push(5); أضف(8); أضف(50);
	b.push(132); b.push(45);
	cout << "حجم a: " << a.size();
	cout << "\nحجم b: " << b.size();
	return 0;
}

الإخراج:

حجم a: 3
حجم b: 2

معقد

استدعاء يقوم بإعادة الدفع إلى المحول الأساسي، وهو ضروري لإنهاء عملية إدراج العنصر.

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

تعديل المجموعات والعناصر المضمنة. إضافة عنصر جديد سيؤدي إلى تعديل جميع عناصر الحجم الأساسي.

الأمان الاستثنائي

تقديم ضمانات متكافئة للعمليات التي تتم على أجهزة التخزين الأساسية.

Stack STL C++