crossplatform.ru

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


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

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

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


Последние 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 Рейтинг@Mail.ru Текстовая версия Сейчас: 11.7.2025, 20:23