网站点击量在哪里看网站推广方法有哪些
web/
2025/10/4 12:47:03/
文章来源:
网站点击量在哪里看,网站推广方法有哪些,龙溪网站制作,学生免费服务器目录
stack类介绍
stack类定义
stack类常见构造函数
stack数据操作
empty()函数
size()函数
top()函数
push()函数
pop()函数
swap()函数 stack类介绍
stack是一种容器适配器#xff0c;专门用在具有后进先出操作的上下文环境中#xff0c;其删除只能从容器的一端…目录
stack类介绍
stack类定义
stack类常见构造函数
stack数据操作
empty()函数
size()函数
top()函数
push()函数
pop()函数
swap()函数 stack类介绍
stack是一种容器适配器专门用在具有后进先出操作的上下文环境中其删除只能从容器的一端进行元素的插入与提取操作。stack是作为容器适配器被实现的容器适配器即是对特定类封装作为其底层的容器并提供一组特定的成员函数来访问其元素将特定类作为其底层的元素特定容器的尾部(即栈顶)被压入和弹出。stack的底层容器可以是任何标准的容器类模板或者一些其他特定的容器类标准容器vector、deque、list均符合这些需求默认情况下如果没有为stack指定特定的底层容器默认情况下使用deque。
stack类定义
template class T, class Container dequeT class stack;
stack类为类模板所以在使用时需要带上类型表示一个具体的类例如数据类型为int类型的stack使用时需要写为stackint
stack类常见构造函数 构造函数 函数原型 无参构造函数 explicit stack (const container_type ctnr container_type()); 上面表格中的前三个构造函数均含有自定义空间配置器并带有缺省值目前只使用默认即可 使用stack类需要包含头文件stack
示例代码
#include iostream
#include stack
using namespace std;int main()
{stackint st;st.push(1);st.push(2);st.push(3);st.push(4);st.push(5);//打印栈while (!st.empty()){cout st.top() ;st.pop();}cout endl;return 0;
}
输出结果
5 4 3 2 1
stack数据操作 函数 功能 empty() 判断调用对象栈是否为空栈 size() 获取调用对象栈中的有效数据个数 top() 获取调用对象栈中的栈顶元素 push() 向调用对象栈顶插入元素 pop() 弹出调用对象栈顶元素 swap() 交换调用对象栈和指定栈
empty()函数
使用empty()函数可以判断调用对象栈是否为空栈 函数 函数原型 empty() bool empty() const;
示例代码
#include iostream
#include stack
using namespace std;int main()
{stackint st;stackint st1;st.push(1);st.push(2);st.push(3);st.push(4);st.push(5);cout st: st.empty() endl;cout st1: st1.empty() endl;return 0;
}
输出结果
st: 0
st1: 1
size()函数
使用size()函数可以获取调用对象栈中的有效数据个数 函数 函数原型 size() size_type size() const;
示例代码
#include iostream
#include stack
using namespace std;int main()
{stackint st;stackint st1;st.push(1);st.push(2);st.push(3);st.push(4);st.push(5);cout st: st.size() endl;cout st1: st1.size() endl;return 0;
}
输出结果
st: 5
st1: 0
top()函数
使用top()函数可以获取调用对象栈中的栈顶元素 函数 函数原型 top() value_type top(); const value_type top() const; 注意如果栈为空时取栈内元素将会出现断言错误
示例代码
#include iostream
#include stack
using namespace std;int main()
{stackint st;stackint st1;st.push(1);st.push(2);st.push(3);st.push(4);st.push(5);cout st: st.top() endl;// 断言错误//cout st1: st1.top() endl;return 0;
}
输出结果
5
push()函数
使用push()函数可以向调用对象栈内插入数据 函数 函数原型 push() void push (const value_type val);
示例代码
#include iostream
#include stack
using namespace std;int main()
{stackint st;st.push(1);st.push(2);st.push(3);st.push(4);st.push(5);//打印栈while (!st.empty()){cout st.top() ;st.pop();}cout endl;return 0;
}
输出结果
5 4 3 2 1
pop()函数
使用pop()函数可以弹出调用对象栈的栈顶元素 函数 函数原型 pop() void pop(); 注意当栈中没有元素时调用pop()函数会出现断言错误
#include iostream
#include stack
using namespace std;int main()
{stackint st;stackint st1;st.push(1);st.push(2);st.push(3);cout st.top() ;st.pop();st.push(4);st.push(5);//打印栈while (!st.empty()){cout st.top() ;st.pop();}cout endl;// 断言错误//cout st1: st1.top() endl;return 0;
}
输出结果
3 5 4 2 1
swap()函数
使用swap()函数可以交换调用对象栈和指定对象栈 函数 函数原型 swap() void swap (stack x);
示例代码
#include iostream
#include stack
using namespace std;int main()
{stackint st;stackint st1;st.push(1);st.push(1);st.push(1);st.push(1);st.push(1);st1.push(2);st1.push(2);st1.push(2);st1.push(2);st1.push(2);cout 交换前 endl;//打印栈while (!st.empty()){cout st.top() ;st.pop();}cout endl;//打印栈while (!st1.empty()){cout st1.top() ;st1.pop();}cout endl;// 注意打印已经使栈为空需要重新插入元素st.push(1);st.push(1);st.push(1);st.push(1);st.push(1);st1.push(2);st1.push(2);st1.push(2);st1.push(2);st1.push(2);st.swap(st1);cout 交换后 endl;//打印栈while (!st.empty()){cout st.top() ;st.pop();}cout endl;//打印栈while (!st1.empty()){cout st1.top() ;st1.pop();}cout endl;return 0;
}
交换前
1 1 1 1 1
2 2 2 2 2
交换后
2 2 2 2 2
1 1 1 1 1
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/86785.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!