我在构造函数中初始化,把TXT中的数据传入数组中,然后调用了add() ,发现越界了这里的lenth+=count 好像没有把数组长度变长,为什么求求大家看看.
看你截图,lenth+=m 这里没有改变长度的原因是因为 m的值没有变。
你截图中read_record(m)看起来是要读取数据长度然后赋值给传进去的m,然后使用读取到的长度m来初始化Student数组。
这里m声明的是int型,作为参数传递进去是值传递,所以read_record无法修改m的值,所以不管程序运行多少次,m的值都为初始化时的0,所以后面的lenth+=m没有改变长度。
//引用传递
void read_record(int & m)
指针传递
void read_record(int *m)
建议你查询下值、引用、指针分别传递的作用