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

delete внутри класса для самого класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Убрать нули после запятой http://www.cyberforum.ru/cpp-beginners/thread828681.html
Ребят помоги убрать ноли после запятой. Если введу 0,3000000000000000000000000000000000000000 то он пишет что больше 16 символов, а нужно чтобы отбросил нули и принял 0,3. Вот код: #include...
C++ нужна рекомендация по программе Помогите пожалуйста создать блок-схему к программе просто нужно перевести какое то число в двоичную систему программа уже готова #include "stdafx.h" #include<iostream> #include<string.h> ... http://www.cyberforum.ru/cpp-beginners/thread828677.html
C++ Выбор подходящего способа хранения\обработки данных
Здравствуйте! Передо мной встала задача выбора структуры данных, позволяющего хранить сортированные данные (в идеале позволяющая хранить пару ключ - значение) и и иметь возможность их добавления и...
C++ переделать из с++ в си
// Условие: Написать 3 функ-ии: // 1-ая: получает размерность массива, создает динамический массив и возвращает указатель на начало созданного массива. // 2-ая: получает адрес массива и его...
C++ лексический анализ дубль 2 http://www.cyberforum.ru/cpp-beginners/thread828654.html
у меня собственно говоря опять проблема. Лексический разбор многочлена. Только на этот раз я пошел другим путем. Вот что получилось. (код ниже). Вроде бы все работает, но если написать извращенный...
C++ Не могу создать шаблон Здорова господа! Снова пытаюсь написать шаблон и сново программа не компилируется #include <iostream> using std::cout; using std::endl; template<typename C> class String { class Cref; подробнее

Показать сообщение отдельно
awpe
2 / 2 / 0
Регистрация: 23.11.2011
Сообщений: 87
05.04.2013, 13:06  [ТС]
ForEveR, матрица проивзольная, не только квадратная, хотя не понимаю какое это имеет значение. В общем работает мой велосипед так - сначала проверяется корректность вводимых данных, потом текущая матрица стирается, и в нее же записываются новые значения попутно создаваясь, без временной матрицы таким образом. Через несколько часов пойду на просеминар, спрошу у того кто это задание делал как именно система тестирования будет проверять утечки, меня посетила мысль - раз от меня требуется только класс, значит пусть на уровне класса все работает без утечек, а если система тестирования сама не хочет освобождать память под объекты которые она создает, то это не мои проблемы...

Добавлено через 2 минуты
Цитата Сообщение от ForEveR Посмотреть сообщение
Вот оператор >> станет чуть сложнее просто потому что реаллокация будет происходить в НЕМ, во временные локальные массивы.
Все мои эксперименты со временными локальными массивами, заканчивались тем, что при попытке возврата значения, либо все работало но оставались утечки, либо к моменту обращения к чему либо из main память там была уже свободна - segfault

Добавлено через 3 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Matrix(const Matrix& rhs) : rows_(rhs.rows_), cols_(rhs.cols_)
   {
      allocate();
      for (size_t i = 0; i < rows_; ++i)
      {
         memcpy(array_[i], rhs.array_[i], cols_ * sizeof(double));
      }
   }
   Matrix& operator = (const Matrix& rhs)
   {
      if (this == &rhs)
      {
         return *this;
      }
      Matrix tmp(rhs);
      swap(tmp);
      return *this;
   }
Поправьте но:

C++
1
2
3
Cmatrix a,b;
...
a=b;
и
C++
1
cmatrix d=b;
это не эквивалентно ли:
C++
1
2
3
4
5
//1
a=cmatrix(b);
 
//2
d=cmatrix(b);
?

Добавлено через 3 минуты
Да и в задании странная вещь написана:
"оператор = реализуйте только в том случае, если автоматически сгенерированый компилятором вам не подходит" - делаем вывод, что есть ситуация, когда хватает автоматически сгенерированого оператора =, что я о нем знаю - так это то, что без указания конструктора он делает мелкую копию, т.е просто указатель копирует, в моем же случае, будет выполнена глубокая копия согласно конструтору. Или я ошибаюсь?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru