我想在矢量上存儲對象。但我不知道爲什麼它不起作用。C++,矢量上的對象
#include <iostream>
#include <vector>
using namespace std;
我在Persona.h文件中有一個Persona類。它只有兩種方法: 默認構造函數和一個名爲mensaje()的方法都是公共的,它沒有任何私有成員。
#include "Persona.h"
int main()
{
vector<Persona> personas;
Persona persona1;
Persona persona2;
personas.push_back(persona1);
personas.push_back(persona2);
vector<Persona>::const_iterator p;
for(p = personas.begin(); p <= personas.end(); p++) {
這裏就是我得到錯誤信息
p.mensaje();
}
}
我認爲問題是,我想打電話給「P」的方式。 是否正確嘗試使用const_iterator而不是其他類型?
'p <= personas.end()'應該是'<'。另外'p'是一個迭代器,因此您應該在迭代器上使用' - >'而不是'.'來訪問類的成員。 – user3286380
你看過關於如何使用迭代器的任何參考嗎? – chris
@ user3286380,它應該是'!=',真的。 – chris