Итак, я студент первого курса информатики, так как для моих финальных проектов мне нужно написать программу, которая использует вектор строк и применяет к ним различные функции.К сожалению, я действительно запутался в том, как использовать указатель для передачи вектора из функции в функцию.Ниже приведен пример кода, чтобы дать представление о том, о чем я говорю.Я также получаю сообщение об ошибке, когда пытаюсь задержать любой указатель.
спасибо.
#include <iostream>
#include <cstdlib>
#include <vector>
#include <string>
using namespace std;
vector<string>::pointer function_1(vector<string>::pointer ptr);
void function_2(vector<string>::pointer ptr);
int main()
{
vector<string>::pointer ptr;
vector<string> svector;
ptr = &svector[0];
function_1(ptr);
function_2(ptr);
}
vector<string>::pointer function_1(vector<string>::pointer ptr)
{
string line;
for(int i = 0; i < 10; i++)
{
cout << "enter some input ! \n"; // i need to be able to pass a reference of the vector
getline(cin, line); // through various functions, and have the results
*ptr.pushback(line); // reflectedin main(). But I cannot use member functions
} // of vector with a deferenced pointer.
return(ptr);
}
void function_2(vector<string>::pointer ptr)
{
for(int i = 0; i < 10; i++)
{
cout << *ptr[i] << endl;
}
}