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

Исправить код конструктора и деструктора - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Напишите пожалуйста чайнику проги http://www.cyberforum.ru/cpp-beginners/thread1175978.html
1-В группе из N человек решено собрать S рублей на проведение праздника. Определить какую сумму должен сдать каждый 2-Пересекающиеся прямые заданы коэффициентами своих уравнений. Определить взаимное...
C++ Хеширование, вывести номер стэка (bucket) с максимальным значением Короче, вот код: //Хеширование #include <iostream> #include <fstream> #include <iomanip> using namespace std; struct Node { http://www.cyberforum.ru/cpp-beginners/thread1175973.html
C++ Вывести самолет, который вылетает позже всего
#include <cstdlib> #include <iostream> #include <conio.h> #include <string.h> #include <iomanip> #include <fstream> using namespace std; const int len_dest = 18;
C++ Заполнить двумерный массив размером 10 на 10 целыми числами по возрастанию
требуется написать программу, заполняющую двухмерный массив размерностью 10 на 10 целыми числами по возрастанию. (помогите плиз не могу отсортировать, именно, двумерный массив.)
C++ Двоичные файлы http://www.cyberforum.ru/cpp-beginners/thread1175957.html
Помогите пожалуйста, а то никак сообразить не могу. Нужно создать двоичный файл и записать в него n целых чисел. Создать массив из исходного файла, записав в него числа, расположенные в файле между...
C++ Записи: анкетные данные учеников Составить программу, выводящую на экран анкетные данные учеников (Ф. И. О., год рождения, адрес, сведения о родителях). Распечатать данные об учениках, родившихся ранее заданного года. сделала по... подробнее

Показать сообщение отдельно
alsav22
5421 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.05.2014, 06:48
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#include <iostream>
using namespace std;
 
class Book
{
    char* _surname; // фамилия автора
    char* _name; // имя автора
    char* _patronymic; // отчество автора
    int _year; // год издательства
    char* _book; // название книги
    int _count; // количество страниц
    public:
 
    Book(char* surname, char* name, char* patronymic)
        :_count(0), _year(0), _book(NULL)
    {
         _surname = _strdup(surname);
         _name = _strdup(name);
         _patronymic = _strdup(patronymic);
         cout <<"Вызов конструктора!!!"<<endl;
    }
 
    ~Book(void)
    {
        free(_surname);
        free(_name);
        free(_patronymic);
        free(_book);
        cout <<"Вызов деструктора!!!"<<endl;
    }
 
    void SetSurname(char* surname) 
    {
        cout <<"Метод SetSurname - ";
 
        if(_surname != NULL) 
        {
            cout <<"Старая запись: " << _surname << " ";
 
            free(_surname); 
        }
 
        _surname = _strdup(surname); // выдиляем и копируем новое значение
 
        cout <<"Новая запись: " << _surname << endl;
    }
 
    void SetName(char* name)
    {
        cout <<"Метод SetName - ";
 
        if(_name != NULL)
        {
            cout <<"Старая запись: " << _name << " ";
 
            free(_name);
        }
 
        _name = _strdup(name);
 
        cout <<"Новая запись: " << _name<<endl;
    }
    void SetPatronymic(char* patronymic)
    {
        cout <<"Метод SetPatronymic - ";
 
        if(_patronymic != NULL)
        {
            cout <<"Старая запись: " << _patronymic << " ";
 
            free(_patronymic);
        }
 
        _patronymic = _strdup(patronymic);
 
        cout <<"Новая запись: " << _patronymic<<endl;
    }
 
    void SetBook(char* book)
    {
        cout <<"Метод SetBook - ";
 
        if(_book != NULL)
        {
            cout <<"Старая запись: " << _book << " ";
 
            free(_book);
        }
 
        _book = _strdup(book);
 
        cout <<"Новая запись: " << _book;
    }
 
    void SetYear(int year)
    {
        _year = year;
    }
 
    void SetCount(int count)
    {
        _count = count;
    }
 
    const char* GetSurname()const
    {
        return _surname;
    }
 
    const char* GetName()const
    {
        return _name;
    }
 
    const char* GetPatronymic()const
    {
        return _patronymic;
    }
 
    const char* GetPost()const
    {
        return _book;
    }
 
    const int GetYear()const
    {
        return _year;
    }
 
    const int GetCount()const
    {
        return _count;
    }
};
 
int main()
{
    setlocale(LC_ALL, "RUS"); // рус язык
    Book* book = new Book("Syrname", "Name", "Patronymic");
    book->SetYear(1980);
    book->SetCount(3000);
    cout << book->GetSurname() << " " << book->GetName() <<endl;
    delete book;
    system("PAUSE");
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru