Я строю очень простой вопрос. Я хочу создать динамически массив строк в C++.создание динамического массива строки C++
Как я могу это сделать?
Это моя попытка:
#include <iostream>
#include <string>
int main(){
unsigned int wordsCollection = 6;
unsigned int length = 6;
std::string *collection = new std::string[wordsCollection];
for(unsigned int i = 0; i < wordsCollection; ++i){
std::cin>>wordsCollection[i];
}
return 0;
}
Но это дает следующее сообщение об ошибке
error C2109: subscript requires array or pointer type
Что ошибка?
А также, если я получу номер ввода от пользователя, от std::cin
могу ли я создать массив такого размера статически?
В будущем, пожалуйста, выберите блок кода и использовать '{}' кнопка; это заставит ваш код правильно отображаться в вопросе. –
Вы набрали 'wordsCollection [i]' вместо 'collection [i]'. Вы не можете использовать полученный размер * динамически * (например, через 'std :: cin') для создания статического массива. Кроме того, массив протекает, поскольку вы никогда его не выпускаете. –