如图,为什么先声明class Student就可以通过编译呢?而另一种稍微改变了顺序,先声明class Teacher就会报错?
报错不仅说invalid use of incomplete type 'class Teacher',还有forward declaration of 'class Teacher',包括后面的友元函数使用Student的数据也被报错说是private的...
希望大神帮忙看一看,万分感谢!
向前申明只能让后续代码知道有这么个东西,先占着位置。但具体实体没有的话,你定义这个申明的函数是没办法的,编译器不知道这个Teacher有这个函数啊
授人以鱼不如授人以渔