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

Перегрузка операций '<<' и '>>' - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ немагу найти ошибку http://www.cyberforum.ru/cpp-beginners/thread177581.html
#include <stdio.h> #include <iostream> #include <math.h> #include <conio.h> #include <stdlib.h> using namespace std; void main() { float x, ans;
C++ Реализовать программу для хранения данных Реализовать программу для хранения данных о ценах на компьютерные комплектующие. Предусмотреть следующие поля: наименование, инвентарный номер, габариты. Для изделий, присутствующих на складе,... http://www.cyberforum.ru/cpp-beginners/thread177573.html
циклы for, while C++
for: Среди всех n-значных чисел (n = 1,2,3,4) указать те, сумма цифр которых равна данному числу k. while: Дано натуральное число n. Поменять порядок следования цифр в этом числе на обратный....
C++ нужен ли свой деструктор
Есть класс class Vetv { public: Vetv(int a,int b, int *ves); Vetv(); virtual ~Vetv(void); int nFrom; int nTo; int *Ves;
C++ Одномерный массив http://www.cyberforum.ru/cpp-beginners/thread177553.html
Нужно написать прогу с использованием статического и динамического распределения памяти. Дан массив действительных чисел. Если его первый элемент не является максимальным элементом массива, то...
C++ Вывести все простые числа до n должно быть так bool SimpleNumber(long int) int main() telo ........ подробнее

Показать сообщение отдельно
robert19
25 / 25 / 3
Регистрация: 26.03.2010
Сообщений: 305
17.10.2010, 20:21  [ТС]
Вот еще не понятно, зачем там вообще переменная 'а' нужна? я же все равно не ввожу значение которое хочу удалить, а просто первый элемент.

Добавлено через 1 минуту
Цитата Сообщение от Nameless One Посмотреть сообщение
Ну а какие ошибки пишет компилятор, мне нужно самому догадаться?..
А он ошибок не выдает. Просто когда нажимаешь удалить, прога вылетает. Вот код
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
#include <string.h>
#include <iostream>
using namespace std;
class List{
private:
        struct Element{
                int key;
                Element *next;
        };
        Element* pbeg;
        Element* pend;
public:
        List(){
                pbeg = 0;
                pend = 0;
        }
        List& operator <<(int a);
        List& operator >>(int& a);
        void print();
        ~List(){
            Element* temp = pbeg;
            pbeg = pbeg->next;
            delete temp;
            temp = 0; 
        }
};
 
List& List::operator << (int a){
    Element* ph = new Element;
    ph->key = a;
    ph->next = 0;
    if (pend!=0){
        pend->next = ph;
        pend = ph;
    }
    else{
        pbeg = ph;
        pend = ph;
    }
    return *this;
}
List& List::operator>>(int &a){
    a = pbeg->key;
    Element* ph = pbeg;
    pbeg = pbeg->next;
    delete ph;
    return *this;
}
void List::print(){
    while (pbeg != 0){
        Element *ph = pbeg;
        pbeg = pbeg->next;
        cout<<" "<<ph->key;
        cout<<endl;
    }
}
int main(){
    setlocale(LC_ALL,"Russian");
    List w; int b=0,a;
    while(true){
        cout<<"1) Заполнить очередь"<<endl;
        cout<<"2) Вывести на экран"<<endl;
        cout<<"3) Удалить элемент"<<endl;
        cout<<"Ввод: "; cin>>b;
        if (b == 1){
            system("cls");
            cout<<"Введите значение: ";
            cin>>a;
            w<<a;
            system("cls");
        }
        if (b == 2){
            system("cls");
            cout<<"Список: ";
            w.print();
        }
        if (b == 3){
            w>>a;
        }
    }
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru