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

Работа с памятью - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа на С http://www.cyberforum.ru/cpp-beginners/thread182936.html
Номер 222 б) Заранее спасиба
C++ стек Создать стек из случайных целых чисел и поменять местами элементы, содержащие максимальное и минимальное значения, считая, что такое значение может быть только одно. http://www.cyberforum.ru/cpp-beginners/thread182935.html
Matrix14. Дана квадратная матрица A порядка M. Начиная с элемента A1,1, вывести ее элементы следующим образом («уголками»): все элементы первого столб C++
Matrix. Дана квадратная матрица A порядка M. Начиная с элемента A1,1, вывести ее элементы следующим образом («уголками»): все элементы первого столбца; элементы последней строки, кроме первого (уже...
Дан массив размера N, вывести его элементы в обратном порядке C++
Array. Дан массив размера N. Вывести его элементы в обратном порядке.
C++ While4°. Дано целое число N (> 0). Если оно является степенью числа 3, то вывести true, если не является — вывести false. http://www.cyberforum.ru/cpp-beginners/thread182930.html
While. Дано целое число N (> 0). Если оно является степенью числа 3, то вывести true, если не является — вывести false.
C++ Case8. Даны два целых числа: D (день) и M (месяц), определяющие правильную дату невисокосного года. Вывести значения D и M для даты, предшествующей ук Case Даны два целых числа: D (день) и M (месяц), определяющие правильную дату невисокосного года. Вывести значения D и M для даты, предшествующей указанной. подробнее

Показать сообщение отдельно
red_88
6 / 6 / 0
Регистрация: 10.02.2009
Сообщений: 138

Работа с памятью - C++

28.10.2010, 16:08. Просмотров 1186. Ответов 7
Метки (Все метки)

Всем доброго времени суток. Почитав данный форум и проч. пришёл к выводу, что мой проект на C# нереален в виду бестолковой работы с памятью. В общем задача такова. Есть класс:
C++
1
2
3
4
5
6
7
8
9
10
11
12
class oAlternativa
{
public:
    oAlternativa(void);
    oAlternativa(int *init,int count);
    virtual ~oAlternativa(void);
    int *Ves;
    int nSize;
    int nFrom;
    int nTo;
    int ID;
};
сейчас в диструкторе написано:
C++
1
2
3
4
oAlternativa::~oAlternativa(void)
{
    if (!Ves==NULL) delete(Ves);
}
Верно ли это и достаточно ли?
Есть ещё один класс:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma once
#include <list>
#include <iostream>
#include <fstream>
using namespace std;
#include "oAlternativa.h"
 
class oUzel
{
private:
    list<oAlternativa> BestWays;
public:
    oUzel(void);
    ~oUzel(void);
    list<oAlternativa> Sources;
    list<oAlternativa> Dests;
    int AddWay(oAlternativa Way);//Добавление к набору BestWays одного из элементов
    int DelWay(int WayID);//Удаление из набора BestWays элемента(ов) у которых ID=WayID
};
Про добавление к набору вопросв нет, а вот как реализовать удаление из набора чтобы память очистить от того, что не нужно? Заранее всем спасибо за ответ.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru