ACE_Bound_Stack与标准库中stack用法比较 #include <stack> void stack_test() { //打印当前函数名称 ACE_DEBUG((LM_DEBUG,ACE_TEXT("%s/n"),__FUNCTION__)); //使用ACE有界栈 ACE_Bounded_Stack<int> bs_int_stack(10); for (int i = 0; i < 10; i++) { //压栈 bs_int_stack.push(i); } for (int i = 0; i < 10;i++) { int nItem = 0; //出栈,并弹出最顶层元素 bs_int_stack.pop(nItem); ACE_DEBUG((LM_DEBUG,ACE_TEXT("bound_statck = %d/n"),nItem)); } //使用STD栈 stack<int> int_stack; for(int i = 0; i < 10;i++) { //压栈 int_stack.push(i); } for (int i = 0; i < 10;i++) { //取得最顶层元素 ACE_DEBUG((LM_DEBUG,ACE_TEXT("statck = %d/n"),int_stack.top())); //出栈 int_stack.pop(); } }