Как добавить int в массив int. Я не хочу устанавливать размер массива, я не хочу использовать внешний цикл.C++ add int to int array
int myArray[] = {};
...
if (condition)
{
myArray.push(value);
}
Как добавить int в массив int. Я не хочу устанавливать размер массива, я не хочу использовать внешний цикл.C++ add int to int array
int myArray[] = {};
...
if (condition)
{
myArray.push(value);
}
Адрес Leon suggestsvector
и особенно его метод push_back
.
Вы можете использовать его следующим образом:
vector<int> myArray; // currently size 0
if(condition) {
myArray.push_back(value); // now resized to 1;
}
EDIT:
Вы можете использовать ostream_iterator
для печати vector
. Например:
copy(cbegin(myArray), cend(myArray), ostream_iterator<int>(cout, " "))
Могу ли я напечатать этот вектор в одной строке? с петлей? – TeodorKolev
@TeodorKolev, если вы настаиваете на одной строке: 'for (int i: myArray) std :: cout << i << '';' :) – StoryTeller
@StoryTeller 'ostream_iterator' - лучшее решение, и оно подходит для одна строка;) –
Вы не можете использовать push в массиве. Я бы предложил вам использовать lists или vectors, если вы не хотите устанавливать какой-либо размер.
есть суб-производительность в большинстве случаев, за исключением действительно параллельной настройки. Лучше обращаться к 'std :: vector' по умолчанию. – StoryTeller
Также вы должны предпочесть ссылку на cppreference.com через cplusplus.com (последний из которых иногда является неточным) – UnholySheep
Вы не можете. Размер массива фиксирован. Используйте 'std :: vector', если вам нужен динамический массив. – Leon
@JonathanMee забудьте об этом, я удалю мои комментарии. В списке –