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

Перегрузка += для множества реализованного через массив - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Где могут быть ошибки? http://www.cyberforum.ru/cpp-beginners/thread858619.html
#include <stdio.h> void main () { int a, b, c, d; printf ("Enter the quality of seconds\n"); scanf ("%d", &a); if (a<60) {printf ("%d sec\n", a);} else if (60<a<3600)
C++ карточная игра (SOS) Помогите пожалуйста дописать карточную игру #include <iostream> #include <Windows.h> #include <math.h> #include <conio.h> using namespace std; void main () { SetConsoleOutputCP(1256); http://www.cyberforum.ru/cpp-beginners/thread858613.html
C++ Двоичный В/В объектов string. Ошибки
Как правильно выводить эти объекты в двоичный файл? В таком случае выскакивают ошибки после завершения программы. int main() { SetConsoleCP(1251); SetConsoleOutputCP(1251); string tmp,...
Многопоточность и ститичность =) C++
программка большая и архитектура такая: class cApp : public cApplication { private: ... public: cApp(); BOOL Init();
C++ Вывод символов зная код http://www.cyberforum.ru/cpp-beginners/thread858600.html
подскажите пожалуйста, вот есть код 3,4,5,6 -это символы масти карт, как вывести эти символы?
C++ Как найти минимальный элемент матрицы? Подскажите пожалуйста, как научить данную программу, которая умножает 2 введенные с клавиатуры матрицы, находить и выводить на экран минимальный элемент полученной матрицы S? #include "stdafx.h"... подробнее

Показать сообщение отдельно
bestpalyer1
-1 / 1 / 0
Регистрация: 20.12.2012
Сообщений: 47

Перегрузка += для множества реализованного через массив - C++

07.05.2013, 20:03. Просмотров 284. Ответов 3
Метки (Все метки)

Товарищи форумчане, помогите найти ошибку. Если юзать данную перегрузку, то программа завершается аварийно.
зы. По-моему теряется где-то в length.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 //Перегрузка оператора +=
 const massiv& massiv::operator+=(const massiv& dub) 
 {
      size=size+dub.size;
      udata = new char [size];
 
      for(int i=0;i<length;i++)
      {udata[i]=data[i];}
 
      for(int i=0;i<length;i++)
      {
          for(int j=0;j<dub.length;j++)
          {
              if(dub.data[j]!=data[i]) 
              {
                  udata[length++] = dub.data[j];
                  length++;
              }
          }
      }
 
      delete [] data;
      data = new char [size];
 
      for(int i=0;i<length;i++)
      {data[i]=udata[i];}
 
      delete [] udata;
      return *this;
 }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru