Class 中声明 一个引用的变量 编译不过解决方法

Class 中声明 一个引用的变量 编译不过
hi,
最近在看一本书“Effective   C++“,其中条款5   ”构造/析构/赋制运算“

中有个例子,我将其简化,如下:
class   A{
      public:
 
      CString&   name;
      A(CString   &   va){   }

};

编译器提示要初始化,如果改成     A(CString   &   va):name()   {}也不对。
对C++这块忘了,高手帮下忙

谢了

------解决方案--------------------
用引用的变量做什么?? 还不如直接用指针

CString tmpname;

class A{
public:

CString& name;
A(CString & va):name(tmpname)
{ }

};


------解决方案--------------------
引用不能为空
------解决方案--------------------
A(CString & va):name(va) {}