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

Перегрузка operator[][][] - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Строка: Найти наибольше количество идуших подряд одинаковых символов http://www.cyberforum.ru/cpp-beginners/thread946343.html
дан текст. Найти наибольше количество идуших подряд одинаковых символов
C++ Вызов LoadLibrary из DLL Есть две Dll - DLL_A и DLL_B Использую MS Visual Studio 2010 C++(MFC) Из основной программы загружаю DLL_A через LoadLibrary, далее вызываю функцию из DLL_A, которая должна загрузить DLL_B через... http://www.cyberforum.ru/cpp-beginners/thread946338.html
Проверить является ли матрица треугольной C++
Всем добрый день. У меня есть матрица, по которой составлен вектор. А как проверить, является ли матрица треугольной? Вот мой код: #include <conio.h> #include <iostream> #include <vector>...
C++ Строка: Найти наибольшее количество идуших подряд пробелов.
Дано предложения. Найти наибольшее количество идуших подряд пробелов.
C++ Пятнашки http://www.cyberforum.ru/cpp-beginners/thread946274.html
# include <iostream> using namespace std; //# include <russian.h> # include <stdlib.h> # include <conio.h> # include <time.h> const int SIZE=4; void main() {
C++ Нужны исходники кода из книги от Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес книга: Приемы объектно-ориентированного проектирования. Паттерны проектирования автор: Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес где взять исходники. спасибо. ps. по почте не приходит. подробнее

Показать сообщение отдельно
ninja2
231 / 187 / 7
Регистрация: 26.09.2012
Сообщений: 2,018
Завершенные тесты: 1
01.09.2013, 14:04  [ТС]
Цитата Сообщение от Nameless One Посмотреть сообщение
Точно так же, как выделял память, только в обратном порядке.
Ну смотри отак я 100% уверен что память освободится:
C++
1
2
3
4
5
6
7
8
9
10
11
12
~cl()
    {
    for(int i=0;i<a;i++)
        {
            for(int j=0;j<b;j++)
            {
                delete[] p[i][j];
            }
            delete[] p[i];
        }
        delete[] p;
    };
А если я утак:
C++
1
2
3
4
~cl()
    {
        delete[] p;
    };
Мб все таки она так же автоматом удалится?????

Добавлено через 32 минуты
Ну так что господа вы наверно вопрос не поняли?

Щас я повторю!!!
От имеется у нас класс:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class cl
{
    int*** p;
    int a;
    int b;
    int c;
public:
    cl(int aa,int bb, int cc)
        :a(aa),
        b(bb),
        c(cc)
    {
        p=new int** [a];
        for(int i=0;i<a;i++) 
        {
            p[i]=new int* [b];
            for(int j=0;j<b;j++)
                p[i][j]=new int[c];
        }
    }
};
В конструкторе выделяется память под трехмерный массив, как мне правильно определить деструктор???

От если я так определю то 100% освобождается память!!!
C++
1
2
3
4
5
6
7
8
9
10
11
12
    ~cl()
    {
    for(int i=0;i<a;i++)
        {
            for(int j=0;j<b;j++)
            {
                delete[] p[i][j];
            }
            delete[] p[i];
        }
        delete[] p;
    };
Ну зачем заморачиваться мб можно попроще отак сделать????
C++
1
2
3
4
    ~cl()
    {
        delete[] p;
    };
Да и все дела????
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru