Как вывести содержимое set
в цикле?
for(auto i : set_object)
cout << i << endl;
:)
Типа:
int main(int argc, const char * argv[])
{
set<int> s = { 1,2,45,23,19,8};
for(auto i : s)
cout << i << endl;
}
Можно использовать обычный цикл for
с итераторами, либо цикл на основе диапазона. Можно также использовать стандартные алгоритмы такие, как, например, std::copy
или std::copy_if
Вот примеры вывода
std::set<int> s{ 1, 2, 3, 4, 5 };
for (std::set<int>::iterator it = s.begin(); it != s.end(); ++it)
{
std::cout << *it << ' ';
}
std::cout << std::endl;
for (const auto &item : s) std::cout << item << ' ';
std::cout << std::endl;
std::copy(s.begin(), s.end(),
std::ostream_iterator<int>(std::cout, " "));
std::cout << std::endl;
std::copy_if(s.begin(), s.end(),
std::ostream_iterator<int>(std::cout, " "),
[](int x) { return x % 2 != 0; });
std::cout << std::endl;
Вывод этих фрагментов кода будет следующим
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
1 3 5
Объявление итератора в этом цикле
for (std::set<int>::iterator it = s.begin(); it != s.end(); ++it)
можно упростить
for (auto it = s.begin(); it != s.end(); ++it)
Виртуальный выделенный сервер (VDS) становится отличным выбором
Пытаюсь собрать Nana библиотеку с помощью 32-битного MinGW+CMake+Clion и получаю ошибки:
Во время считывания из файла функция не выходит из цикла,
Есть QScrollArea или любой другой виджетВ него добавляются другие виджеты и, соответственно, рисуются на нем
При записи в файл, помимо текста добавляются различные символы, хотя если вызывать функцию без переменной с текстом, то все хорошо