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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
blackbanny
129 / 116 / 2
Регистрация: 14.11.2010
Сообщений: 707
#1

двусвязный список - конструктор копирования - C++

22.12.2010, 22:41. Просмотров 2050. Ответов 1
Метки нет (Все метки)

есть шаблон класса для двусвязного списка на базе адресных указателей:

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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
template <class T> class list
{
private:
    struct elem
    {
        T val;
        elem *prev;
        elem *next;
        elem (T val0)
        {
            val = val0;
            next = prev = NULL;
        }
        int remove()
        {   if(prev != NULL) prev->next = next;
            if(next != NULL) next->prev = prev;
            return(prev != NULL);
        }
    };
 
    int size; 
    int Put, Del;
public:
    int nCount, IsIn;
    elem *ph, *pl;
    list(); //Конструктор 
    list(list &T); //конструктор копирования
    ~list(); //Деструктор 
    
 
};
 
template <class T> list<T>::list()
{
    ph = pl = NULL;
    size = 0;
}
template <class T> list<T>::list(list<T> &T)
{
 
 
 
}
 
 
template <class T> list<T>::~list()
{
       if(ph = NULL) return;
    elem *p = ph;
    while(p!=NULL)
    {
        p = p->next;
        delete ph;
        ph = p;
        size = 0;
    }
}
подскажите как написать конструктор копирования...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2010, 22:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос двусвязный список - конструктор копирования (C++):

Написать конструктор для пользовательского класса "Двусвязный список" - C++
Попытался построить двусвязный список. Как написать этот конструктор ? Может быть правильно будет определить функцию push_back и каждый раз...

Не могу сделать чтобы класс содержал основной конструктор и конструктор копирования - C++
Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются длины трех сторон треугольника. Класс...

Не могу правильно сделать конструктор и конструктор копирования и принадлежность точки с заданными координатами треугольнику - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;windows.h&gt; #include &lt;math.h&gt; #include &lt;algorithm&gt; using...

Конструктор инициализации, конструктор копирования, деструктор - C++
Я сделал почти задание по перегрузке операторов. Осталось одно, тоесть три: конструктор инициализации, конструктор копирования, деструктор....

Переделать двусвязный список в двусвязный кольцевой - C++
Здравствуйте, у меня єсть двусвязный список однако он не кольцевой! как это запрограммировать? и второй вопрос как обеспечить вставку...

Создать класс "Вектор" и реализовать конструктор по умолчанию, конструктор копирования и деструктор - C++
Всем доброго времени суток! нужна ваша помощь! нужно создать класс вектор и реализовать конструктор по умолчанию, копирования и...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
22.12.2010, 23:53 #2
Добавьте в класс три метода: добавление в список, получение количества элементов списка, получение произвольного элемента списка.
Тогда конструктор копирования будет написать очень просто.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2010, 23:53
Привет! Вот еще темы с ответами:

Конструктор копирования - C++
Доброго времени суток! Написала класс Треугольная матрица. Не могу исправит такую вот ошибку: ОС Windows инициировала точку останова...

Конструктор копирования в c++ - C++
Добрый день, такая задача по с++ Какая ошибка в следующей реализации конструктора копирования по умолчанию и деструктора?? Какой еще...

Конструктор копирования - C++
Подскажите пожалуйста в моём случае конструктор копирования правильно реализован? class Massiv { private: float *a; ...

Конструктор копирования - C++
Здравствуйте) объясните пожалуйста в чём проблема при описании в классе конструктора копирования компилятор выдаёт ошибку:error C3699:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru