Форум программистов, компьютерный форум CyberForum.ru

Вывод значений вектора на экран - C++

Восстановить пароль Регистрация
 
oodessit
0 / 0 / 0
Регистрация: 21.08.2013
Сообщений: 36
23.08.2013, 15:45     Вывод значений вектора на экран #1
есть правильно заполненный вектор:

C++
1
vector<Employee*> emp;
один из экземпляров:
C++
1
Bytime bt1("Ahmed", 2, 6.0);
необходимо вывести три последние значения ID (второй параметр)на экран.
Написал функцию в родительском классе:

C++
1
2
int id;
void show_id(){cout<<" "<<id<<endl;};
Пробую вывести так:

C++
1
2
3
for(int i=emp.end(); i!=emp.end()-4; i--){
    emp[i]->show_id();
}
Компилятор матюгуется, требует приведения типов.

Пробую так:

C++
1
2
3
4
vector<Employee*>::iterator it;
it=emp.end()-1;
for(it;it!=emp.end()-4;it--)
{cout<<emp[it]<<endl;}
Тоже ошибка: IntelliSense: no operator "[]" matches these operands
operand types are: std::vector<Employee *, std::allocator<Employee *>> [ std::_Vector_iterator<std::_Vector_val<std::_Simple_types<Employee *>>> ]


как же это реализовать ?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.08.2013, 15:45     Вывод значений вектора на экран
Посмотрите здесь:

C++ Вывод содержимого вектора на экран
вывод на экран только четных значений функции на интервале C++
C++ Вывод значений на экран
Считывание значений двумерного вектора C++
C++ Вычислить значение заданной функци на данном интервале с заданным шагом. Осуществить вывод значений аргумента и результатов вычислений значений функ
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GetVariable
 Аватар для GetVariable
163 / 119 / 5
Регистрация: 17.03.2013
Сообщений: 283
23.08.2013, 15:58     Вывод значений вектора на экран #2
покажите полный код
gray_fox
What a waste!
 Аватар для gray_fox
1244 / 1127 / 53
Регистрация: 21.04.2012
Сообщений: 2,350
Завершенные тесты: 3
23.08.2013, 16:04     Вывод значений вектора на экран #3
C++
1
2
3
for (std::size_t i = emp.size() - 4; i != emp.size(); ++i) {
   emp[i]->show_id();
}
Добавлено через 3 минуты

Не по теме:

Цитата Сообщение от oodessit Посмотреть сообщение
Пробую вывести так:
for(int i=emp.end(); i!=emp.end()-4; i--){
emp[i]->show_id();
}
Ты понимаешь что ты здесь написал?)

oodessit
0 / 0 / 0
Регистрация: 21.08.2013
Сообщений: 36
23.08.2013, 16:14  [ТС]     Вывод значений вектора на экран #4
gray_fox, спасибо большое. Не догнал я с типами данных...

Добавлено через 3 минуты
Цитата Сообщение от gray_fox Посмотреть сообщение
C++
1
2
3
for (std::size_t i = emp.size() - 4; i != emp.size(); ++i) {
   emp[i]->show_id();
}
Добавлено через 3 минуты

Не по теме:


Ты понимаешь что ты здесь написал?)


Затупил. Согласен

Добавлено через 2 минуты
был бы очень признателен, если бы мне еще подсказали, как этот вектор указателей записать в файл, а потом считывать с него же. Сколько не курил, все с какими-то ухищрениями и сложностями. А мне просто надо его экземпляры записать в файл, а затем прочесть
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6166 / 2895 / 282
Регистрация: 04.12.2011
Сообщений: 7,697
Записей в блоге: 3
23.08.2013, 16:22     Вывод значений вектора на экран #5
Цитата Сообщение от oodessit Посмотреть сообщение
был бы очень признателен, если бы мне еще подсказали, как этот вектор указателей записать в файл, а потом считывать с него же. Сколько не курил, все с какими-то ухищрениями и сложностями. А мне просто надо его экземпляры записать в файл, а затем прочесть
Это не нужно. Указатели каждый раз устанавливаются на создаваемые или уже созданные в памяти объекты. Смоделировать эту ситуацию не получится. Пишите сами объекты размещённые по указателям. Как их хранить, - Вам и решать.
Yandex
Объявления
23.08.2013, 16:22     Вывод значений вектора на экран
Ответ Создать тему
Опции темы

Текущее время: 16:05. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru