это мой второй основной вопрос по указателям. Я вызываю функцию, выставленную в DLL.получение указателя на вектор C++
Вектор объявляется и заполняется значениями внутри вызываемой функции.
Мне нужно пройти через вектор и получить доступ к его значениям из вызывающей функции.
int calling_function()
{
int* vectorSize;
string input = "someValue";
vector<customObjects> *v;// do i need a pointer to a vector here?
void function_being_called(input,v,&vectorSize);
//need to access the vector here...
}
void function_being_called(string input, void *returnValue, int* vectorSize)
{
vector<customObjects> v;
v.push_back(myObj);
*vectorSize= v.size();
*returnValue = ? // how to pass vector to the calling function through this parameter pointer variable
return;
}
указатель vectorSize неинициализирован. Также это не нужно. –
Yuck. «Int» для vectorSize ?! Используйте 'std :: size_t' (некоторые люди даже нахмурились, говоря, что вы должны использовать' std :: vector <> :: size_type', поскольку стандарт не указывает, что должен быть таким же, как 'std :: size_t') , лучше все равно это. – Bathsheba