Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
iandi
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 20
#1

Перегрузка оператора - C++

02.05.2012, 20:43. Просмотров 372. Ответов 4
Метки нет (Все метки)

Здравствуйте. Не могу разобраться, как перезагрузить оператор >>.
C++ (Qt)
1
2
int a;
cin >> a;
Надо, чтобы a умножалось на некое число, допустим, а*60. Как для этого надо передавать это число?
http://www.cyberforum.ru/cpp-beginners/thread564881.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.05.2012, 20:43
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Перегрузка оператора (C++):

Перегрузка оператора +
Здравствуйте! Не могу понять, из-за чего появляется ошибка. Вот программа,...

Перегрузка оператора ==
Пытаюсь перегрузить оператор == . Делаю так: В классе: class cData // класс...

Перегрузка оператора ==
Я уже встречала подобный вопрос на этом форуме, но у меня всё равно что-то не...

перегрузка оператора!
Помогите сложить диагонали , при помоши перегрузки оператора+, чтобы можно было...

Перегрузка оператора [][]
допустим у меня есть клас Matrix и я хочу опедилить оператор доступа к его...

4
Catstail
Модератор
23531 / 11641 / 2034
Регистрация: 12.02.2012
Сообщений: 18,980
02.05.2012, 20:50 #2
Мне кажется, что сначала нужно создать соответствующий класс...
0
PointsEqual
ниначмуроФ
838 / 522 / 110
Регистрация: 12.10.2009
Сообщений: 1,915
02.05.2012, 21:02 #3
Цитата Сообщение от iandi Посмотреть сообщение
Не могу разобраться, как перезагрузить оператор >>
никак.
для встроенных типов никак


а так можно
C++
1
2
3
4
   int a;
 
   cin >> a ;
   a *= 60;
0
iandi
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 20
02.05.2012, 21:05  [ТС] #4
Цитата Сообщение от PointsEqual Посмотреть сообщение
а так можно
C++
1
2
3
4
   int a;
 
   cin >> a ;
   a *= 60;
О этом варианте думал, но данных вводить надо много, и после каждого делать умножение не хотелось. Да и с перегрузкой на этом примере хотел разобраться.
0
PointsEqual
ниначмуроФ
838 / 522 / 110
Регистрация: 12.10.2009
Сообщений: 1,915
02.05.2012, 21:21 #5
Цитата Сообщение от iandi Посмотреть сообщение
Надо, чтобы a умножалось на некое число, допустим, а*60. Как для этого надо передавать это число?
хм, по-моему такого нельзя и для своего типа сделать...

оператор ввода определяется так
C++
1
friend istream& operator>>(istream& is, cTest& ob);
правый операнд - должна быть неконстантная ссылка

а в
C++
1
2
cTest t;
cin >> (t * 60)
(t * 60) - константа

так что никак нельзя. Поправьте если не так
0
02.05.2012, 21:21
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.05.2012, 21:21
Привет! Вот еще темы с решениями:

Перегрузка оператора =
Ввести строку символов S1. Программа должна содержать перегруженную операцию...

перегрузка оператора
Помогите,пожалуйста! у меня есть класс Gruppa, куда входят студенты...

Перегрузка оператора
Привет, форумчане. Есть простой класс, в котором перегружается оператор '==' :...

Перегрузка оператора <<
Вот упрощенный вариант моей программы, пересчитывает время в 12-й формат мне...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru