问一上关于函数返回引用的有关问题

问一下关于函数返回引用的问题
函数的返回类型 和return 语句后面跟的变量类型应该是一致的吧

经典的返回引用 
const string & student::Name(& S) const
{return S;}
S本身就是一个指向实参的引用

但是
class student {
private: string name ;
public :const string & Name() const ;};

const string & student::Name() const
{return name;}

这个Name()返回为一个指向string类的引用
但是 return name 这个name变量并不是指向任何变量的引用类型啊


这个应该怎么理解?

还是说 name本身就是一个指向name自己的引用?
但是我在书上找了好久也没有类似的说法

------解决方案--------------------
引用只是防止拷贝的一个语法,和指针是一样的道理,不是非得&才能给&.