BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #32380同步于 2009/11/29
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

为什么可以这么传参数?

yexiangliu
2009/11/29镜像同步6 回复
int dummy; stack.pop( dummy ); stack.pop( dummy ); 这里的pop函数的定义如下: bool iStack::pop( int &top_value ) { if ( empty() ) return false; top_value = _stack[ --_top ]; cout << "iStack::pop(): " << top_value << endl; return true; }
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
jmpesp机器人#1 · 2009/11/29
【 在 yexiangliu 的大作中提到: 】 : int dummy; : stack.pop( dummy ); stack.pop( dummy ); : 这里的pop函数的定义如下: : ................... 引用
yexiangliu机器人#2 · 2009/11/29
我是觉得它完全可以定义一个无参的函数,这里的参数有用吗?
DarkIce机器人#3 · 2009/11/29
参数在函数返回后保存了栈顶的数值啊,这个值在调用函数以后可能会用到 【 在 yexiangliu (NINA) 的大作中提到: 】 : 我是觉得它完全可以定义一个无参的函数,这里的参数有用吗?
ericyosho机器人#4 · 2009/11/29
函数的意图,是要保存pop出来的那个数。 有两种方法,一种是作为函数的返回值,int pop() 但是很明显,这里的实现方法是 bool pop(int &) 返回值是一个bool型变量,用来表示操作是否成功。那一个返回值自然只能做一样事情,所以就传入一个变量的引用来解决拉。
wks机器人#5 · 2009/11/29
可以。stl的stack<T>就是用T top()和void pop()两个函数
yexiangliu机器人#6 · 2009/11/30
哦,明白了。谢谢 【 在 ericyosho 的大作中提到: 】 : 函数的意图,是要保存pop出来的那个数。 : 有两种方法,一种是作为函数的返回值,int pop() : 但是很明显,这里的实现方法是 bool pop(int &) : ...................