好吧,伙计们,我一直在寻找这个错误的答案,但我没有针对我的案例的具体答案。我有一个用户类,每个用户都有自己的计算机列表,计算机类由这三个类(操作系统、内存和处理器)组成。所以 Computer 有自己的 toString ,它从上面提到的组件中调用特定的 toString。
所以...用户有他的属性列表computerList;
在我称为 Controler 的其他类中,我有一个从特定用户打印计算机列表的功能。这是我的功能:
void printComputerList(User* u){
list<Computer*>::iterator itr;
for(itr=u->getComputerList().begin(); itr!=u->getComputerList().end(); itr++){
cout<<(*itr)->toString(); //(*itr) calls its own toString implemented in the class Computer
}
}
所以,当我运行程序时,当我选择打印我已经填写的列表时,我会从标题中得到错误。我认为这可能是托特林之间的某种混淆?
PD:如有必要,我可以发布其余代码
谢谢!