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

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

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

Деструктор - C++

15.04.2013, 19:50. Просмотров 421. Ответов 2
Метки нет (Все метки)

В чем проблема?)
Деструктор
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2013, 19:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Деструктор (C++):

Почему создается виртуальный деструктор A, а в таблице виртуальных функций лежит деструктор B - C++
Почему я делаю виртуальным деструктор A, а в таблице виртуальных функций лежит деструктор B?

Деструктор - C++
#include <iostream> #include <conio.h> #define _CRTDBG_MAP_ALLOC #include <crtdbg.h> using namespace std; class list{ ...

Деструктор - C++
Не понимаю почему в проге не работает строка cout << "Удаляем элемент списка!"; вроде деструктор вызываеться автоматически, как пишет...

Деструктор - C++
В каком случае необходимо явно определять деструктор?

Деструктор - C++
Вроде все просто но чето никак не работает Задача: Написать программу в которой Конструктор класса MyCl выводит сообщение на...

Деструктор - C++
Добрый вечер!мне нужна одна программа для примера(рабочая),но это тему мы коснулись слегка..хотел попросить у кого есть...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
abit
262 / 261 / 33
Регистрация: 03.02.2013
Сообщений: 722
15.04.2013, 19:58 #2
class DeWin, а деструктор называется ~MyWin()? это новое слово в C++

кроме того вообще очень плохая идея пихать конструкторы и деструктор в секцию protected, хотя тут смотря для чего класс нужен, если только для наследования - то пойдёт
1
Rezzonans
0 / 0 / 0
Регистрация: 15.04.2013
Сообщений: 8
15.04.2013, 20:24  [ТС] #3
abit, спасибо большое,поправил,но еще куча непонятных ошибок=)
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
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
#include <owl\framewin.h>
 
#include <owl\dialog.h>
 
#include <owl\edit.h>
 
#include <owl\scroller.h>
 
#include <owl\validate.h>
 
#include <stdlib.h>
 
#include <owl\opensave.h>
 
 
#include "bmp.rh"
 
 
float kof;
 
class Myclass: public TApplication
 
{
 
public:
 
virtual void InitMainWindow();
 
};
class DeWin: public TFrameWindow
 
{
 
protected:
int N;
 
TBitmap * Pic;
 
TBitmap * M;
 
TDib* dib;
 public:
 
DeWin (TWindow*parent, const char far*title);
 protected:
 
~DeWin();
 
void About();
 
void ImFile();
 
void Clr();
 
bool CanClose();
 
void Paint (TDC&,bool,TRect&);
 
DECLARE_RESPONSE_TABLE(DeWin);
 
};
 
bool DeWin::CanClose()
 
{int res =MessageBox("Zakrit Prilozhenie?","",
 MB_ICONQUESTION | MB_YESNO);
 if(res == IDYES) return true;
  else return false;
  }
DEFINE_RESPONSE_TABLE1(DeWin,TFrame Window);
EV_COMMAND(100,About),
EV_COMMAND(201,ImFile),
EV_COMMAND(202,ImRw),
EV_COMMAND(203,Clr),
END_RESPONSE_TABLE;
}
DeWin::DeWin(TWindow*parent, const char far*title):
TFrameWindow(parent,title)
{
AssignMenu("MENU_l");
SetBkgndColor(COLOR_WINDOWFRAME+1);
Attr.X=0;
Attr.Y=0;
Attr.Style|=WS_VSCROLL|WS_HSCROLL;
Scroller=new TScroller (this, 10,10,200,400);
Attr.AccelTable = "MENU_1";
Pic=new TBitmap(*GetModule(),IDB_BITMAP 1);
N = 0;
kof=l;
}
DeWin::~DeWin()
{
delete Pic;
}
void DeWin::GetWindowClass(WNDCLASS&wc)
{TWindow::GetWindowClass(wc);
wc.style=CS_VREDRAW|CS_HREDRAW ;
}
void DeWin::About()
{
MessageBox (" Programma prosmotorchik failov.bmp "
 " \n Razrabotanna studentom gruppy  "
" \n Vasye Vasye"
,"0 programme",
MB_ICONINFORMATION| MB_OK);
}
void DeWin::ImRw()
{
N=2 ;
Invalidate();
}
void DeWin::ImFile()
{N=0;
Invalidate();
TOpenSaveDialog::TData fileData
(OFN_FILEMUSTEXIST|OFN_PATHMUSTEXIST|OFN_HIDEREADONLY,//|
OFN_OVERWRITEPROMPT,
"Bitmap Files (*.BMP)|*.bmp|", 0, "", "BMP");
TFileOpenDialog *dialog= new TFileOpenDialog(this,fileData);
int res=dialog->Execute();
if (res==IDOK)
{try
{dib = new TDib(fileData.FileName);}
catch(TGdiObject::TXGdi&)
{MessageBox("Invalid Bitmap File", GetApplication()->GetName(), MB_OK);
 }
N=1;
Invalidate();
}
else
delete dialog;
};
void DeWin::Clr()
{
N=0;
Invalidate();
}
void DeWin::Paint (TDC&dc,bool,TRect&)
{
if(N==2)
{
TMemoryDC memDC(dc);
memDC.SelectObject(*Pic);
(dc).StretchBlt(0,0,kof*(Pic->Width()),kof*(Pic->Height()),memDC,0,0,
(Pic->Width()),(Pic->Height()),SRCCOPY);
}
if(N==1)
{
TMemoryDC*memDC =new TMemoryDC(dc);
M=new TBitmap(dc,*dib,0);
memDC->SetDIBits(*M,*dib);
memDC->SelectObject(*M);
(dc).StretchBlt( 0,0,kof*(M->Width()),kofi:(M->HeightO),*memDC,0,0,M->
Width(),M->Height(),SRCCOPY);
 delete memDC;
}
}
void Myclass::InitMainWindow()
{
TFrameWindow *wndw=new MyWin(0,"Risunki");
SetMainWindow(wndw);
wndw->SetIcon(this,IDI_ICON 1);
wndw->SetIconSm(this,IDI_ICON 1);
wndw->SetCursor(this,IDC_CURSOR1);
}
int OwlMain(int,char*[])
{
return Myclass().Run();
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2013, 20:24
Привет! Вот еще темы с ответами:

Деструктор - C++
Ребята, объясните, пожалуйста, где, как и когда в программе вызывается деструктор? Вот мой пример: #include &lt;iostream&gt; using namespace...

Деструктор - C++
Я написал деструктор, но препод сказал переделать так как надо было смотреть на то, как я выделял память. Помогите исправить. int **m6; ...

деструктор - C++
опять же проблема с лабой. помоги дописать деструктор. #include &quot;stdafx.h&quot; #include &lt;string&gt; #include &lt;iostream&gt; using...

Деструктор - C++
Доброго времени суток, есть некоторый класс и 2 функции подобны тем, что описаны ниже. В первой объявляется данный класс, обрабатывается и...


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

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

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