关于类中引用变量初始化的一个小疑点,请大家进来帮忙看一下,多谢你了

关于类中引用变量初始化的一个小问题,请大家进来帮忙看一下,谢谢你了.
请问一下如果类中的成员是量为 "引用 ",则必须在初始化表中进行初始化,但是我不知道如何初始化引用变量,例子如下:
class   B
{
    public:
    B();
    B(int);
    int   &yy;
};
B::B(int   a):yy(a) //这里我像初始化普通变量那样初始化引用变量则报错.
{
}

最后请问一下,如果一个类中有如上的两个构造函数的话,每一个构造函数都要初始化引用成员变量吗?(前提是以后的程序要用到每一个构造函数生成对象)
如果是的,请问一下B()这个构造函数应当如何初始化引用变量yy?谢谢各位了

------解决方案--------------------
因为a是栈上的数据,你引用的话,在构造函数结束的时候int a这个数据已经失效,所以你用的时候就失败了.

------解决方案--------------------
这个程序是对的,没有错啊
------解决方案--------------------
你怎么可以直接引用一个常数呢?
int n = 20;
B temp(n);
------解决方案--------------------
楼主的程序应该是对的啊(至少用VC6.0和Devcpp编译的话,确实没错)