Предполагая C ++; для этого я не вижу проблем с использованием вектора в строке (строка служит вторым измерением):
void foo(vector<string> v) {
cout << v[0]; // Assuming the elements exist!
}
int main(int argc, char *argv[])
{
vector<string> vString; // Make the vector
vString.push_back("something"); // Add a string
foo(vString); // Print out 'something'
}
В своем редактировании вы также описали, что единственное, что изменится, это фактическая строка, поэтому вместо push_back
ввода ваших строк, когда они необходимы, вы можете инициировать вектор с длиной:
vector<string> vString(10); // Assuming a size of 10
и затем используйте их как обычно:
vString[4] = "something";
и (в ответ на комментарий) изменить размер во время выполнения:
vString.resize(15); // Make it bigger, generates new blank strings