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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Разделить меньшее число на большее http://www.cyberforum.ru/cpp-beginners/thread1082068.html
Вот не пойму! Почему у меня не хочет делить меньшее число на большее? Допустим, мне нужно разделить 25 на 10, но в итоге, вместо 2,5, у меня только целая его часть, т.е. 2. В итоге ничего не работает... Ну, как пример программы, в которой я пытаюсь реализовать. Может что там не так? #include <iostream> #include <locale.h> using namespace std; int main() { setlocale (0,"");
C++ Задачи про динамическую память Сегодня попалась такая задача: ременной p хранится адрес динамически выделенной памяти, являющейся массивом из 5 чисел типа int. Но этой памяти оказалось недостаточно. Выделите память для хранения ЕЩЕ 10 целых чисел в том же динамическом массиве и сохраните указатель на нее в p так, чтобы в нем остались старые 5 чисел. Вводить и объявлять переменные не нужно, функцию main реализовывать не... http://www.cyberforum.ru/cpp-beginners/thread1082066.html
C++ Сортировка методом пузырька(по убыванию) C++
Помогите,пожалуйста, нужно этот код сделать по убыванию. #include <iostream> #include <algorithm> using std::cout; using std::cin; using std::endl; using std::swap; const size_t MAX = 5; void printArray(int arr)
C++ Каждый элемент матрицы умножить на сумму ее четных отрицательных элементов
Составить программу для решения задач, с обязательным использованием подпрограммы для ввода матрицы с экрана, ее обработки и вывода на экран. И в ней нужно: Каждый элемент матрицы A(3,3) умножить на сумму ее четных отрицательных элементов Помогите пожалуйста! :)
C++ Определите, сколько звездочек будет напечатано в результате вызова функции F (5) http://www.cyberforum.ru/cpp-beginners/thread1082042.html
Определите, сколько звездочек будет напечатано в результате вызова функции F(5): И сама функция: void F(int n) { if (n>1) F(n/2); F(n-1); printf("*");
C++ Выбор в начинании Как Вы считаете, лучше сначала изучить C++ полностью, а потом писать проги или лучше сначала поставить себе задачу в написании программы и нахожу учить то, что понадобится в написании этой программы ? подробнее

Показать сообщение отдельно
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
27.01.2014, 23:40     Создание объекта класса, чтобы он постоянно висел в памяти, и чтобы память выделялась один раз
Цитата Сообщение от casper007 Посмотреть сообщение
утечку памяти устранил.
Укажите где:
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
int TUchenik::Write_and_Out(HWND HWin1, HWND HW,int k, int flag)
{
   TUchenik *Uchenik;
    
    Uchenik = new TUchenik[k];
        
  int i;
  DC=BeginPaint(HW,&ps);
  SelectObject(DC,HF);
 
  TextOutW(DC, 10,20,L"Список класса", 13);
  MoveToEx(DC, 10,38, NULL); LineTo(DC,585,38);
 
  TextOutW(DC, 15 , 42, L"Имя"    , 3);
  TextOutW(DC, 205, 42, L"Фамилия", 7);
  TextOutW(DC, 465, 42, L"Класс"  , 5);
  TextOutW(DC, 535, 42,L"Буква",    5);
  MoveToEx(DC,  10, 60  , NULL); LineTo(DC,585,60);
 
                                
                             
{wofstream File(*NameOfFile);
  for(i=0; i<k; i++)
     {  GetDlgItemText(HWin1,IDD_EDIT1,*Uchenik[i].name    ,52);
        GetDlgItemTextW(HWin1,IDD_EDIT2,*Uchenik[i].surname ,70);
        GetDlgItemTextW(HWin1,IDD_EDIT3,*Uchenik[i].klass, 4);
        GetDlgItemText(HWin1,IDD_EDIT4,*Uchenik[i].bukva,2);
      TextOutW(DC, 15, 46+(i+1)*20-2, *Uchenik[i].name   , wcslen(*Uchenik[i].name)   );
       TextOutW(DC,205, 46+(i+1)*20-2, *Uchenik[i].surname, wcslen(*Uchenik[i].surname));
       TextOutW(DC,475, 46+(i+1)*20-2, *Uchenik[i].klass,   wcslen(*Uchenik[i].klass)  );
       TextOutW(DC,528, 46+(i+1)*20-2, *Uchenik[i].bukva,   wcslen(*Uchenik[i].bukva)  );
       MoveToEx(DC, 10, 40+(i+2)*20, NULL); LineTo(DC,585,40+(i+2)*20);
       
       File<<numb<<"\t"<<name<<"\t"<<surname<<"\t"<<klass<<"\t"<<bukva<<"\n";
  }
      File.close();
}
Цитата Сообщение от casper007 Посмотреть сообщение
Память выделил (в конструкторе) под все массивы указателей
Разберитесь, что вам нужно в классе: массивы WCHAR или массивы указателей на WCHAR, и как память под массивы указателей выделяется.
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
WCHAR *name[40];    
WCHAR *surname[60]; 
WCHAR *klass[6];     
WCHAR *bukva[2];  
WCHAR *identifier[100]; // puple data
WCHAR *NameOfFile[90]; 
WCHAR *Name_Sys_File[10];// job of file
FILE *File; 
FILE *SysFile;
 
*Name_Sys_File=new WCHAR[10];
*Name_Sys_File=L"seting.tal";
*NameOfFile = new WCHAR[90];
*name = new WCHAR[40]; 
*surname = new WCHAR[60] ; 
*klass = new WCHAR[6]; 
*bukva = new WCHAR[2];   
*identifier = new WCHAR[50];
*NameOfFile=NULL;
*name=NULL;
*surname=NULL;
*bukva=NULL; 
*identifier=NULL; 
*klass=NULL;
 
Текущее время: 01:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru