Я пытаюсь сделать вектор, который содержит указатели на каждую из первых строк в векторе вектора строк. Я собираюсь пропустить first_words_in_subvecs
в программу \bin\sort
для их сортировки/печати. Я полагал, что это пустая трата времени/пространства процессора, чтобы создать новый вектор фактических строк, так как я просто собираюсь их пропускать. Правильно ли я думаю, что быстрее будет указывать указатели на строки, которые я хочу отправить? И почему этот код не работает? Я не получаю никаких предупреждений или ошибок, но это вызывает ошибки при запуске.Как сделать вектор указателей на элементы в другом подвектор?
int print_sorted_subvectors(vector< vector<string> > &sorted_subsets_vec)
{
vector<string*> first_words_in_subvecs;
for(int i = 0; i < sorted_subsets_vec.size(); i++)
{
first_words_in_subvecs[i] = &sorted_subsets_vec[i][0];
}
}
Вы знаете ['std :: sort()'] (http://en.cppreference.com/w/cpp/algorithm/sort), правильно? –
ну я сейчас! это будет проще ... мы использовали fork и bin \ sort для другой части задания, поэтому я собирался использовать его снова, но это будет намного проще ... глупых труб ... так что тогда Наверное, мне придется копировать, а не указывать. Но как это будет сделано? Мне все еще любопытно. – Marty