初学者有关问题:什么叫引用性说明

菜鸟问题:什么叫引用性说明?
请指出下列程序段中错误的语句,并说明原因。
  ①struct example{
  int num;
  float f1;
  };
  int i=num;
  int num;  
  ②class S; 
  S obj;  
  S *objptr;
  void fun(S obj);
  ③class myClass{
  private:
  int i; 
  myClass member; 
  myClass *p;  
  };
答案给的解释是:
  ① int i=num; 错,num在此不可见
  ② S obj; 错,引用性说明所说明的类名不能用来建立对象 
  ③ myClass member;错,引用性说明所说明的类名不能用来建立对象。

  问题一:对1题错误的原因是否是:必须得用结构体对象调用结构的成员???
  问题二:我不懂什么是引用性说明,能否结合这个例子说明下


------解决方案--------------------
2说的是class s只有声明没有定义,所以不能建立S obj对象,因为不知道它的大小,内容;不过可以S *obj
------解决方案--------------------
我只知道在myClass member;处应该放构造函数,对象在类外面创建
------解决方案--------------------
第一个要通过对象才能调用成员;第二个只有声明,没有定义,不能够建立对象的;第三个好像可以那么用啊。。。