|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
09.04.2011, 18:27 | #1 |
Регистрация: 03.01.2010
Сообщений: 7
|
Перегрузка операторов
Есть класс "Packet", он должен принимать данные различных типов и добавлять их в массив (буфер).
Для удобства хотелось бы, чтобы добавлять данные можно было с помощью оператора "+". То есть так: Код:
Возможно ли это? Подскажите, пожалуйста. |
09.04.2011, 22:10 | #2 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
Да. Добавляйте соответствующие методы:
Код:
Ищете информацию по C++?
cplusplus.com |
10.04.2011, 10:39 | #3 |
Регистрация: 03.01.2010
Сообщений: 7
|
А что делать с тем, что при вычислении правой части будут вызываться обработчики операторов не моего класса? Ведь они не смогут посчитать, например, "(BYTE)0x05 + "asdf";".
Придётся создавать классы своих типов данных (MyInt, MyWord, MyDword, MyChar), в которых перегружены операторы? |
10.04.2011, 12:33 | #4 | |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
Цитата:
Код:
Ищете информацию по C++?
cplusplus.com |
|
10.04.2011, 15:06 | #5 |
Регистрация: 03.01.2010
Сообщений: 7
|
Не вышло. Сначала вычисляется то, что после знака равно.
Код:
Код:
|
10.04.2011, 15:11 | #6 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
Ну, возможно. Тогда просто делайте так:
Код:
Ищете информацию по C++?
cplusplus.com |
10.04.2011, 15:42 | #7 |
Регистрация: 03.01.2010
Сообщений: 7
|
Получается, простым способом реализовать это не получится?
Хотелось бы именно "элемент + элемент2 + элемент3"... |
10.04.2011, 15:52 | #8 |
C++
Форумчанин
Регистрация: 27.03.2011
Сообщений: 803
|
Как вариант - сделайте конструктор преобразования для своего класса, который будет неявным образом преобразовывать "элемент1", "элемент2" и т.д. к типу Packet, а складываться будут уже полученные объекты.
Ищете информацию по C++?
cplusplus.com |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перегрузка операторов | _-Re@l-_ | Паскаль, Turbo Pascal, PascalABC.NET | 11 | 20.11.2010 13:23 |
Перегрузка операторов(С++) | Сергей AfeR | Помощь студентам | 0 | 16.06.2010 18:34 |
Перегрузка операторов | raspberry | Общие вопросы C/C++ | 2 | 06.04.2010 00:19 |
Перегрузка операторов. | Macb3th | Общие вопросы C/C++ | 5 | 01.04.2010 21:14 |
Перегрузка операторов, Организация перегрузки операторов | chagin_yav | Помощь студентам | 2 | 12.05.2008 09:15 |