次のコードは C++ で記述されていますが、std::vector についてよく知らないため、stdlib.h の realloc を使用しています。
とにかく、この奇妙な実行時エラー " " _CrtIsValidHeapPointer(pUserData), dbgheap.c" が発生します。
メソッドまたはコード全体を見たい場合は、お知らせください。
生徒と学年という 2 つのクラスがあります。学生が含む
char _name[21];
char _id[6];
int _numOfGrades;
int* _grades;
float _avg;
および Grade は単に次を含む
Student* _students;
int _numOfStudents;
次の作業中
_grades = (int *)realloc(_grades,(sizeof(int)*(_numOfGrades+1)));
これにより、奇妙な実行時エラーが発生します。
_students = (Student *)realloc(_students,(sizeof(Student)*(_numOfStudents+1)));
_gradesも_studentsも全く問題なくnewで作成されています。問題は、_students を再割り当てしようとしているときだけです。
任意の入力を歓迎します。