Правильно ли я понимаю, что вывод массива на экран в c++ возможен только через перебор элементов? - Вопросы по С+
  • Чаты 4chT.com в телеграмм
    Наши группы в телеграмм

Вопрос Правильно ли я понимаю, что вывод массива на экран в c++ возможен только через перебор элементов?

Регистрация
12 Июн 2013
Сообщения
77
Репутация
0
Спасибо
0
Монет
0
Простого вывода, как в случае со string не существует?
 
Регистрация
24 Окт 2013
Сообщения
64
Репутация
0
Спасибо
0
Монет
0
Готового нет, но можно добавить. #include "vector" #include "iostream" using namespace std; template < typename T > ostream& operator<< (ostream& out, const vector< T > & v) { for(auto i:v)out<<i<<; return out;} int main(){ vector < string > s = {"first", "second", "third"}; vector < bool > b = {true, false, true, false, false}; vector < int > i = {1, 2, 3, 4}; cout << s << endl; cout << b << endl; cout << i << endl; } Выдает first second third 1 0 1 0 0 1 2 3 4
 
Регистрация
7 Июл 2013
Сообщения
76
Репутация
0
Спасибо
0
Монет
0
От того, что в string спрятали цикл вывода, не значит, что это делается одним разом. Когда-то для терминала действительно командой процессора копировали "сразу" блок байт и таким образом ускорялся вывод, в наше же время даже терминал уже эмулируется и там так и так обычный цикл. Так что если лень делать каждый раз вывод, то сам придумай и перегрузи свою функцию.
 
Сверху Снизу