• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Вывод На Экран

  • Автор темы roma4717
  • Дата начала
R

roma4717

здравствуйте столкнулся с проблемой(привожу кусочек кода): в 6 строке снизу я заношу в поля структуры текст из файла , а теперь надо вывести отдельно каждое поле, через cout у меня не выходит что то не так делаю , как это сделать объясните пожалуйста ?! Заранее спасибо
C++:
typedef struct 
{
string fio;
string nomer;
string date1;
string date2;
int debt,ought;
} client;
bool Read_input1 (wchar_t* filename, vector <client>&w_client)
{	
fstream f1;
f1.open(filename, ios::in);
if (!f1.is_open())
return false;
while (!f1.eof())
{
client str1;
f1>>str1.fio>>str1.nomer>>str1.date1>>str1.date2>>str1.debt>>str1.ought;
if (!str1.fio.empty())
w_client.push_back(str1);
}
return true;
}
 
R

rrrFer

что то не так делаю , как это сделать объясните пожалуйста
но тут не видно что ты именно с cout делаешь, как мы можем узнать что там что-то не так? - приводи код.
 
R

roma4717

но тут не видно что ты именно с cout делаешь, как мы можем узнать что там что-то не так? - приводи код.
да конечно вот :
C++:
for (vector<client>::iterator it =w_client.begin(); it!=w_client.end(); ++it)
cout<<*it;
ругается на треугольные скобки влево пишет что : Error 1 binary '<<' : no operator found which takes a right-hand operand of type 'client' (or there is no acceptable conversion)
 
R

rrrFer

потому что it ссылаеца на клиента, а для клиента ты не перегрузил оператор <<

это тоже самое что написать
Код:
client a;
//...
std::cout << a;

как считал отдельно каждое поле:
f1>>str1.fio>>str1.nomer>>str1.date1>>str1.date2>>str1.debt>>str1.ought;

так и выводи, примерно
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!