你的构造函数的参数列表和调用时传入的参数不一致啊,比如person(string nam,int a,char s,string addr,long t)是五个参数,但是你调用的时候person(nam,a,s,addr),只传了四个参数,最后那个long t你没给参数值。teacher_cadre的构造函数也是同样的错误。
void display() {person::output(); \\改cout<
分太低了,把错误原因也帖上来啊!