Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 3 / 3
Регистрация: 17.12.2013
Сообщений: 64
1

Перегрузка operator+

18.11.2016, 15:54. Показов 391. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, уважаемые. Помогите разобраться.
У меня есть класс CharRow у которого есть такие вот поля :
C++
1
2
3
4
5
class CharRow {
 
protected:
     char* ptr;
     int ROW_MAX_LENGTH;
И есть производный класс BigIntegerNumber (массив символов в виде цифр).

В классе CharRow у меня перегружен operator+(складывает 2 строки) :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
   virtual CharRow operator+ (CharRow row2)
    {
        int row1Length = this->getRowCurrentLength();
        int row2Length = row2.getRowCurrentLength();
 
        CharRow tempRow(row1Length + row2Length);
 
        for(int i = 0; i < row1Length; i++){
            tempRow.ptr[i] = this->ptr[i];
        }
 
        for(int i = 0; i < row2Length; i++){
            tempRow.ptr[i + row1Length] = row2.ptr[i];
        }
 
        return tempRow;
    }
Как определить operator+ в классе BigIntegerNumber, чтобы operator+ мог вызываться динамически по указателю на базовый класс (CharRow) ?

operator+ в BigIntegerNumber должен складывать 2 массива, как-то так :
C++
1
2
3
4
5
6
    BigIntegerNumber operator+ (BigIntegerNumber row2)
        {
            BigIntegerNumbers temp(this->getRowCurrentLength() + row2.getRowCurrentLength());
            temp = BigIntegerNumbers::addValue(*this, row2);
            return temp;
        }
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.11.2016, 15:54
Ответы с готовыми решениями:

Перегрузка operator>> и operator<< в абстрактном классе
Здрасьте! Есть необходимость перегрузить потоки, Я знаю как это сделать через friend, но вот...

Перегрузка operator->
Помогите пожалуйста #include &lt;iostream&gt; using namespace std; class myclass { public: ...

Перегрузка operator<<
Доброе время суток. Есть очередная задачка - перегрузить оператор вывода таким образом: Есть...

Перегрузка operator[]
Забыл как перегружать оператор для присваивания значений, а найти не могу ._. Чтобы было вот...

0
18.11.2016, 15:54
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.11.2016, 15:54
Помогаю со студенческими работами здесь

Перегрузка operator+
при сложени myVector2 = myVector0 + myVector1; выодит сообщения &quot;конструктоор 0&quot;...

Перегрузка operator=
const Point&amp; operator= (const Point &amp;p) { if (this ==&amp;p) return *this; x = p.x; ...

Перегрузка operator->()
Всем привет! Прохожу тему дескрипторов и меня удивляет как работает перегруженный operator-&gt;()....

Перегрузка operator+
Как сложить суму годовы продаж всех компаний? Можно использовать перегрузку оператора +? ...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru