请详细介绍C++中stack容器的特点及使用方法。回答需要包含以下四个要点：1. stack容器的定义和基本性质；2. 如何创建 stack 容器；3. 说明常用的操作（如：push, pop, top, size, empty）；4. 常见的使用误区。要求分四个段落进行说明，每段不少于50字。
user
在C++中，stack容器属于标准库中的关联容器之一，由栈基于某种底层容器（如deque、vector或list）实现。stack容器的特点是有后进先出（LIFO, Last In First Out）的数据组织方式，即最后入栈的数据会最先被处理。由于其特性，因此很适合用于记忆栈，括号匹配，路径寻找等场景中。这样的一种数据形式，在C++的工作中니까

创建stack容器有多种方式，最为直接的是通过模板类std::stack<>加以容器类型来创建。例如，若要创建一个保存整数的stack容器，可以使用代码`std::stack<int> myStack;`。除此以外，stack也支持构造时指定其它容器作为底层基础。如果我们想要用一个deque来实现更高效地操作，可以写成`std::stack<int, std::deque<int>> myDequeStack;`以之趾ativo地实现专科招收。此外，我们还可以使用匿名的第三参数以一种自定义的方式解析后续的基本实现。这样感应流

stack常用的成员函数包括但不限于：push，将一个元素压入栈顶；pop，移除栈顶元素；top，访问栈顶元素；size，获取当前栈中元素的数量；empty，判断栈是否为空。它们都是常机会用到的函数，尤其在循环或其他高效复用的模型中。例如判断容器是否为空的时候可以使用如下语句写成：`if(myStack.empty()) { // Do something ... }`。务必注意的是，大部分stack的操作，都隐含有几个较特殊的规则，比如只有当且唯当容器为空时才可以 onDestroy，在pop、top时如果没有进行任何检查则可能会导致behave失效。实现stack的各类是由代码集合而成的标准实体，这样使用起来就很万便呢。
assistant