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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ задача с дополнительным условием http://www.cyberforum.ru/cpp-beginners/thread712698.html
Вывести на экран в виде таблицы значения функции F на интервале от Xнач до Xкон с шагом H. Значения a,b,c,Xнач,Xкон,H-действительные числа, вводятся с клавиатуры. Задачу необходимо решить двумя способами с использованием функций пользователя, и без их использования. При применении функций, испльзование глобальных переменных запрещено. a*x^2+b,если x-1<0 и b-x1!=0 F= { x-a/b, если ...
C++ Составить программу, которая будет выводить true или false в зависимости от принадлежности точки с координатами x, y закрашенной области Составить программу, которая будет выводить true или false в зависимости от принадлежности точки с координатами x, y закрашенной области: http://www.cyberforum.ru/cpp-beginners/thread712689.html
Считывание массива из файла C++
#include <iostream> #include <fstream> using namespace std; int main () { int i,j; int matr1; FILE *f1;
C++ Дана целочисленная прямоугольная матрица. Определить:
Массивы. Программа должна запрашивать размеры матрицы и самостоятельно заполнять ее с помощью генератора случайных чисел. Верхняя граница для значения элементов матрицы также вводится с клавиатуры. 2.1 Дана целочисленная прямоугольная матрица. Определить: 1) количество строк, не содержащих ни одного нулевого элемента; 2) максимальное из чисел, встречающихся в заданной матрице более одного...
C++ Сформулировать результат выполнения функции http://www.cyberforum.ru/cpp-beginners/thread712676.html
Сформулировать результат выполнения функции, определить назначение ("смысловую нагрузку") использованных переменных, написать вызов функции. int F (int n, int c){ int i,j, k, m; for (i=k=m=0; i<n-1; i++) { if (c<c) k++; else { if (k>m) m=k; k=0; } } if (k>m) m=k;
C++ Найти все натуральные числа в диапазоне между m и n (m<n), в записи которых нет двух одинаковых цифр. Подсчитать количество таких чисел. Найти все натуральные числа в диапазоне между m и n (m<n), в записи которых нет двух одинаковых цифр. Подсчитать количество таких чисел. подробнее

Показать сообщение отдельно
ValeryS
Модератор
6377 / 4843 / 442
Регистрация: 14.02.2011
Сообщений: 16,056
29.11.2012, 01:18     Перегрузка бинарного оператора +
Цитата Сообщение от Magister Посмотреть сообщение
Я перегрузил оператор присваивания =
а еще перегрузи += -=

Цитата Сообщение от Magister Посмотреть сообщение
кроме 1 детали: деструкторы в конце программы не позволяют программе выходить по нажатию клавиши...
какой клавиши ???
что то я у тебя в майне никаких клавиш не видел
Цитата Сообщение от Magister Посмотреть сообщение
C++
1
2
3
v1.~Vector();
 v2.~Vector();
 v3.~Vector();
нахрена ты деструкторы явно вызываешь?
сами вызовутся когда переменная выйдет за область видимости (когда майн закончится)

Добавлено через 4 минуты
Цитата Сообщение от Magister Посмотреть сообщение
C++
1
2
3
4
Vector::~Vector(void)
{
delete massiv;
}
delete[] massiv; !!!!!!!!
Цитата Сообщение от Magister Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
Vector::Vector(void)
{
 size = 3;
 massiv = new int[3];
}
Vector::Vector(int s)
{
 size = s;
 massiv = new int[size];
}
можно объеденить в один конструктор с параметрами по умолчанию
C++
1
2
3
4
5
Vector::Vector(int s=3)
{
 size = s;
 massiv = new int[size];
}
Добавлено через 3 минуты
вот где у тебя ошибка
Цитата Сообщение от Magister Посмотреть сообщение
C++
1
2
3
4
Vector Vector::operator= (const Vector& right)
{
 size = right.size;
 massiv = new int[size]
;
ты выделил новую память и присвоил указатель massiv а старый указатель потерял
утечка однако

пиши вот так
C++
1
2
delete[] massiv;
massiv = new int[size];
 
Текущее время: 15:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru