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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Табличный процессор http://www.cyberforum.ru/cpp-beginners/thread1134024.html
Нужно создать табличный процессор, который мог бы читать таблицы из файла, записать таблицы в файл, перемещать курсор по клеткам таблицы, запись в клетку числа, запись в клетку текста. Вопрос- с чего начать, (что почитать), как создать данную таблицу, что бы перемещался курсор и с помощью него реализовывались действия? В интернете ничего по этой теме не нашла. Буду благодарна за помощь. (так же...
C++ Создать класс Integral, в котором реализовано вычисление определенного интеграла методом прямоугольников, методом трапец Должны быть реализованы безаргументные и инициализирующие конструкторы, в том числе конструктор с двумя аргументами – итераторами, конструктор копирования, деструктор, операция присваивания, ввод-вывод. Подходящие операции реализуются как методы класса, а остальные - как внешние дружественные функции. Должна быть поддержана обработка исключений по нехватке памяти: все конструкторы обязаны иметь... http://www.cyberforum.ru/cpp-beginners/thread1134009.html
C++ Нужен сборник задач по С++
Ребят, посоветуйте сборник задач по С++, на базе консольных приложений Желательно что бы задания были разного уровня сложности. Заранее спасибо :)
C++ Консольное приложение Win32 - ошибка c0000005
Visual Studio 2010 express Программа http://rghost.ru/53607442 Исходник основного файла #include "stdafx.h" #include <fstream> #include <iostream> #include <cmath>
C++ Определить длину каждого слова в предложении http://www.cyberforum.ru/cpp-beginners/thread1133991.html
Определить длину каждого слова в предложении. Слова отделены друг от друга пробелами или запятой.
C++ Динамическую структуру, содержащую информацию: название диска; год выпуска, количество песен, продолжительность звучания Разработать указанную динамическую структуру данных . Разработать интерфейс программы, позволяющий вводить данные и получать результаты в удобной для пользователя форме. Программа должна проверять правильность вводимых данных. В случае возникновения ошибок должны выдаваться сообщения. Должна быть предусмотрена возможность получения данных из файла и запись результатов в файл. В варианте указаны... подробнее

Показать сообщение отдельно
larts
0 / 0 / 0
Регистрация: 13.12.2013
Сообщений: 15
30.03.2014, 17:53     Перегрузка оператора
Здравствуйте. Нужна помощь) Есть такой класс:
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
31
32
class vect
{
public:
    float *items;
    vect()
    {
        items = new float[5];
        for(int i = 0;i<5;i++)
            items[i] = 0;
    }
    ~vect()
    {
        if(items)
            delete items;
        items = NULL;
    }
    vect operator+(const vect& R)
    {
        vect res;
        for(int i = 0;i<5;i++)
            res.items[i] = items[i] + R.items[i];
        return res;
    }
};
int _tmain(int argc, _TCHAR* argv[])
{
    vect a;
    vect b;
//Записываю значения в a и b
    vect c;
    c=a+b;
}
Проблема в том, что деструктор вызывается дважды - после строки 22, удаление объекта res, и потом, после строки 31. Причем, второй раз, вообще не понятно для какого объекта. Его поле items не инициализировно, в общем, попытка удаления выдает ошибку. Подскажите, пожалуйста, что не так.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:38. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru