从双指针调用函数

时间:2011-11-28 05:43:38

标签: c++ pointers dynamic

我创建了一个指向我所创建的类的指针,该类指向此类的动态指针数组。我正在尝试使用我创建的类中的函数(Student)。

Student **list;

list[i] = TextToClass(tempCourse);
list[i].SetCourse(x);
list[i].SetGrades(inFile);

作业有效。但使用这些功能不起作用。我究竟该如何使用他们的功能?

这是错误:

student.cpp: In member function ‘void Controller::ReadAndStore()’:
student.cpp:119: error: request for member ‘SetCourse’ in ‘((Controller*)this)->Controller::list[i]’, which is of non-class type ‘Student*’
student.cpp:121: error: request for member ‘SetGrades’ in ‘((Controller*)this)->Controller::list[i]’, which is of non-class type ‘Student*’

3 个答案:

答案 0 :(得分:2)

什么是list[i]?也许如果它是一个指针,如你所说,你应该使用list[i] -> SetCourse(x);

不要害怕发布一些代码而不是描述你打算做什么。如果它能按照你的意图行事你就不会问问题。

答案 1 :(得分:2)

你试过这个吗?

list[i]->SetCourse(x);
list[i]->SetGrades(inFile);

答案 2 :(得分:2)

由于Student **list是指向指针的指针,因此list [i]应该是指针。所以它的方法应该用符号" - >"来调用,就像上面的回答一样。