我知道我的问题看起来令人困惑,但请看一下我的代码:
struct name{
string first
string last
};
struct course_grade{
name Name;
string idNum;
double *testArrayPtr;
double average;
char grade;
};
int num;
int num_test;
course_grade *gradeArr = new course_grade[num]; //this works, no hit of error shown
(*gradeArr).testArrayPtr= new double[num_test];// error!
我正在尝试动态分配数组。问题是这个数组在我动态分配的另一个结构数组中。 这是我第一次在Stack中提问,感谢您的帮助!
答案 0 :(得分:1)
这个有效:
struct name{
string first
string last
};
struct course_grade{
name Name;
string idNum;
double *testArrayPtr;
double average;
char grade;
};
int main(int argc, char* argv[])
{
int num = 1;
int num_test = 1;
course_grade *gradeArr = new course_grade[num];
(*gradeArr).testArrayPtr = new double[num_test];
return 0;
}
我假设您尚未初始化num
和num_test
。