注册 登录
编程论坛 C++教室

问个引用函数的问题

yamaki2 发布于 2010-02-24 20:11, 363 次点击
template<class T>
class Stack
{
  public:
    ....
    T& Top() const; //返回栈顶元素
  private:
    T * Pstack;
    int top;
    ...
};

template<class T>
inline T& Stack<T>::Top() const
{
  if(IsEmpty()) throw "stack is empty";
  return Pstack[top];
}
问,,这个T& Top()返回的是什么东西,意图是啥?(不好意思,,只有0分)
1 回复
#2
pangding2010-02-24 22:05
返回的是栈顶元素的引用。就是说你可以通过改这个返回值,来实际修改栈顶元素的值。如果去掉 & 的话,返回的就是它的拷贝,改拷贝出来的值不会影响栈顶元素本身。
1