第一次看到stack,以为它是一个和vector同等地位的容器,其实不是
官方解释:stacks are a type of container adaptor, specifically designed to a LIFO context(last-in-first-out), where elements are inserted and extracted only from one end of the container
其实我们手机充电时,连接usb口和插孔的那个大家伙,就是适配器。本质上,适配器是一种机制,能使某种事物的行为看起来像另外一种事物一样。
先贴一个stack应用的例子吧:
1 #include <iostream> 2 #include <stack> 3 4 using namespace std; 5 6 int main() 7 { 8 stack<int> intStack; 9 for(size_t i = 0; i != 10; i++) 10 intStack.push(i); 11 while(!intStack.empty){ 12 int val = intStack.top(); //返回栈顶元素,但不弹出 13 cout << val; 14 intStack.pop(); //弹出栈顶元素,但不返回该元素值 15 } 16 cout << endl; 17 return 0; 18 }
seg_container_adaptor_stack
时间: 2024-11-04 16:52:52