crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в переопределенный ввод
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
voipp Дата 22.2.2010, 12:46
  проблема оказалась в том что я забыл задать размер вектора на ненулевой
kwisp Дата 17.2.2010, 12:09
 
Цитата(voipp @ 16.2.2010, 22:13) *
if ((t.width == 0) || (t.height == 0)) return s;

может поэтому
voipp Дата 16.2.2010, 22:13
  значит пишу я переопределенный оператор ввода :
istream& operator >> (istream& s, CTable& t) {
  if ((t.width == 0) || (t.height == 0)) return s;
  for (unsigned i = 0; i < t.height; i++)
    for (unsigned j = 0; j < t.width; j++) {
      cout << endl << "Enter item[" << i << ", " << j << "] = ";
      s >> t.items[i][j];
    }
  if (s.peek() == '\n') s.ignore();
  return s;
};


в main я вызываю именно этот оператор а вслед за ним пишу оператор ввода уже стандартный(для заполнения целочисленной переменной).Переопределенный operator>> (istream& s, CTable& t) пропускается и ввод переходит на operator>>(int).Почему такое происходит?Икак от этого избавиться?
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 28.3.2024, 18:03