Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
iandi
1 / 1 / 0
Регистрация: 21.11.2010
Сообщений: 20
#1

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

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

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

Перегрузка оператора - C++
Добрый день! Мне нужно перегрузить в классе двумерного массива оператор ++, чтобы она возвращал максимальный элемент массива. класс...

Перегрузка оператора - C++
Подскажите пожалуйста, способ перегрузки операторов >= и <= в следующей строке if ( ob.str >= '0' && ob.str <= '9' )Мой вариант не...

Перегрузка оператора == - C++
Есть шаблонный класс List (не имеющий перегруженных операторов) и есть шаблонный класс ListWithName, который наследует List и из своих...

Перегрузка оператора % - C++
Подскажите пожалуйста как перегрузить оператор % для матрицы! #include "StdAfx.h" #include "statik.h" #include <iostream> ...

Перегрузка оператора [][] - C++
добрый день. имею в классе двумерный массив. подскажите как правильно сделать перегрузку к классу, чтоб при ЭкземлплярКлассa...

Перегрузка оператора - C++
Доброго всем времени. пытаюсь написать свой класс надстройка на одномерный массив. У меня вот возникло затруднение с перегрузками...

4
Catstail
Модератор
22838 / 11204 / 1812
Регистрация: 12.02.2012
Сообщений: 18,444
02.05.2012, 20:50 #2
Мне кажется, что сначала нужно создать соответствующий класс...
0
PointsEqual
ниначмуроФ
836 / 520 / 33
Регистрация: 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
ниначмуроФ
836 / 520 / 33
Регистрация: 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
Привет! Вот еще темы с ответами:

Перегрузка оператора == - C++
нужно сравнить 1) объект класса abc с объектом класса abc1 2) объект класса abc с другим объектом класса abc 3) объект класса abc1...

Перегрузка оператора -> - C++
обясните пожалуйста как перегружать -> и для чего это нужно

Перегрузка оператора == - C++
Пытаюсь перегрузить оператор == . Делаю так: В классе: class cData // класс дата { int year; // год short mounth; //...

Перегрузка оператора + - C++
Помогите с перегрузкой оператора +. Нужно сложить два объекта - двумерные массивы. сArray operator + (сArray &arr) { int size...


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

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

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