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

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

Войти
Регистрация
Восстановить пароль
 
TheCross84
1 / 1 / 0
Регистрация: 15.03.2012
Сообщений: 6
#1

Помогите перегрузить операцию присваивания - C++

10.04.2012, 22:33. Просмотров 356. Ответов 2
Метки нет (Все метки)

Здравствуйте, есть программа:
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
#include<iostream>
using namespace std;
struct Element
{
    char data;      //Aaiiua
    Element *Next;  //Aa?an ne yeaiaioa
};
class List
{
    Element *Head;
    Element *Tail;
    int Count;
public:
    List();
    ~List();
     
    void Add(char data);
    void Del();
    void DelAll();
    void Print();
    int GetCount();
};
 
List::List()
{
    Head=Tail=NULL;
    Count=0;
}
 
List::~List()
{
    DelAll();
}
 
int List::GetCount()
{
    return Count;
}
 
void List::Add(char data)
{
    Element * temp = new Element;
    temp->data=data;
    temp->Next=NULL;
    if(Head!=NULL)
    {
        Tail->Next=temp;
        Tail=temp;
    }
    else
    {
        Head=Tail=temp;
    }
}
 
void List::Del()
{
    Element * temp = Head;
    Head=Head->Next;
    delete temp;
}
 
void List::DelAll()
{
    while(Head!=0) Del();
}
 
void List::Print()
{
    Element * temp = Head;
    while(temp!=0)
    {
        cout<<temp->data<<" ";
        temp=temp->Next;
    }
    cout<<"\n\n";
}
 
void main()
{
 
    List lst;
    char s[]="Hello, Word!!!\n";
    cout<<s<<"\n\n";
    int len=strlen(s);
 
    for(int i=0;i<len;i++)
        lst.Add(s[i]);
 
    lst.Del();
    lst.Del();
    lst.Del();
    lst.Print();
}
Мне для нее нужно перегрузить оператор присваивания, может кому не сложно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2012, 22:33
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Помогите перегрузить операцию присваивания (C++):

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

реализовать операцию присваивания - C++
Описать класс Строка с динамическим выделением памяти, реализовать операцию присваивания, остальные методы достаточно только объявить. Не...

Перегрузить оператор присваивания для класса - C++
Помогите, пожалуйста. Требуется написать оператор присваивания для данного класса class ARRAY{ int size; double **m; public: ...

Найти ошибку и перегрузить операцию - C++
Ребята! Пропадаю! Помогите найти ошибку в коде и написать перегрузку: class Reis { int p; int hl; public: reis operator - (reis...

В классе перегрузить операцию сложения - C++
Здравствуйте. Помогите кто сможет. Задание, нужно создать два прямоугольника, рисовать их не нужно, только создать ихние позоции...

Как перегрузить операцию ++ для строк - C++
Перегрузить унарные операторы «++» (префиксную и постфиксную). Как перегружать для int и для чего это надо я понимаю, но в случае...

2
gooseim
Эксперт С++
510 / 414 / 37
Регистрация: 23.09.2010
Сообщений: 1,159
10.04.2012, 23:13 #2
C++
1
2
3
4
5
6
7
8
9
10
11
List& List::operator = (const List& lst)
{
   DelAll();
   Element *el = lst.Head;
   while(el)
   {
      Add(el->data);
      el = el->Next;
   }
   return *this;
}
1
TheCross84
1 / 1 / 0
Регистрация: 15.03.2012
Сообщений: 6
10.04.2012, 23:33  [ТС] #3
Ага, спасибо большое, заработало!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.04.2012, 23:33
Привет! Вот еще темы с ответами:

В классе string перегрузить операцию вчитания - C++
Здравствуйте! Помогите, кто сможет. Задание: есть строка например, String s1(&quot;123&quot;); и строка String s2(&quot;здравствуйте&quot;); написав:...

Перегрузить операцию сложения для класса дробей - C++
Люди добрые, помогите инвалиду;) Нужно написать программу на Си, задача такова: Перегрузить операцию сложения для класса дробей и...

Для класса Vector перегрузить операторы присваивания, сравнения, ввода и вывода - C++
срочно помогите написать программу, желательно с комментариями если можно)) Для класса Vector перегрузить операторы присваивания, ...

Перегрузить операцию сложения в базовом классе, который имеет два наследника - C++
Как перегрузить операцию сложения в базовом классе, который имеет два наследника(объекты которых как раз и надо сложить)


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

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

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