根据线程数目创建多个vector,然后把这个vector传给线程操作。但是因为是在函数里创建vector对象的,传给线程以后函数退出vector也就消失了,所以想把vector在堆上用new分配,但不知道怎么访问里面的元素,例子:
for(...)
{
vector<char*> v=new vector<char*>;
v->push_back("a");
v->push_back("b");
....AfxBeginThread(thread,(LPVOID)v)
}UINT thread(LPVOID pParam)
{
vector<char*> *value=(vector<char*> *)pParam;
char *result=value[i]; //这里该怎么访问里面的元素,比如取出字符a和b,value[i]它不是一个char*而是一个vector对象,奇怪
return 1;
}