如何编辑矢量中的对象?
现在我的矢量是vector<PCB> M3M;
里面是我班上的几个对象。
class PCB
{
public:
void setPID (int a)
{
PID = a;
}
int retrievePID()
{
return PID;
}
int retrieveLimit()
{
return Limit;
}
void setLimit (int a)
{
Limit = a;
}
int retrieveBase()
{
return Base;
}
void setBase (int a)
{
Base = a;
}
int retrieveHoleTrueOrFalse()
{
return HoleTrueOrFalse;
}
void setHoleTrueOrFalse (int a)
{
HoleTrueOrFalse = a;
}
private:
int PID;
int Limit;
int Base;
int HoleTrueOrFalse;
};
如何在我在对象中选择的任何地方编辑PID部件?
例如,我想在M3M [4]的矢量中设置一个新的PID。我该怎么做呢?
答案 0 :(得分:3)
M3M[4].setPID(<new PID>);
答案 1 :(得分:1)
您还可以拥有一个迭代器,它可以指向数组中的元素并为其设置新的PID。例如:
std::vector<PCB>::iterator it = M3M.begin();
//this will advance your iterator by 3
it += 3;
it->setPID(5); // this will set the 3rd element's PID to 5
请记住,您的向量需要至少有4个元素才能执行上面的代码。为了填充向量,可以使用向量的push_back()方法。
M3M.push_back(PCB(0));
M3M.push_back(PCB(1));
M3M.push_back(PCB(2));
M3M.push_back(PCB(3));
M3M.push_back(PCB(4));