我在data *c=it;
收到错误。我只需要检索一个值。
class X
{
string value4;
vector<data> *T1;
}
class data
{
string value1;
int value2;
}
void doTask(X V1)
{
vector<data> *tempdata=V1.getData();
for (std::vector<data>::iterator it = tempdata->begin() ; it !=tempdata->end(); ++it)
{
data *c=it;
sendData(value3,c);
}
}
void sendData(string s,data d)
{
}
我收到此错误:
错误:无法转换'std :: vector :: iterator {aka 初始化中__gnu_cxx :: __ normal_iterator&gt;}'到'data *'
我是这个向量用法的新手。有人可以帮助我吗?
答案 0 :(得分:0)
您必须取消引用迭代器以获取对包含的项类型的引用,然后获取其地址以获取指针:
data *c = &*it;