• Paranoid - курс по анонимности и безопасности в сети от команды codeby. Защита персональных данных, анонимность в сети интернет, настройка виртуальных машин, безопасная передача данных, анти форензика и еще много всего полезного. Подробнее ...

  • Мобильный клиент нашего форума для Android гаджетов доступен в Google Play Market по этой ссылке. Клиент можно скачать с нашего форума по этой ссылке. Последняя версия МК в нашем телеграм канале вот здесь

Как распределить память в С++ Builder 6 для работы своей программы

  • Автор темы xxxsas
  • Дата начала
X

xxxsas

#1
Как распределить память в С++ Builder 6 для работы своей программы?
В обычном С++ есть функции MALLOC и FREE, но там мы выделяем память из исходных данных(в смысле мы почти весь код прописываем вручную и память распределить легко), а как распределить память допустим на операцию, если код:

void __fastcall TForm1::N6Click(TObject *Sender)
{

User_Date->Caption = DateToStr(Date());
QueryEDP->SQL->Clear();
QueryEDP->SQL->Add("SELECT telefone, adress, inn, name,");
QueryEDP->SQL->Add("dox_iskl_iz_prib, proc_bank_o, vir_ot_real_cb,");
QueryEDP->SQL->Add("vir_ot_real_predpr_imk, price_real_pnz,");
QueryEDP->SQL->Add("lgots, yb_269, yb_ne_ych_for_nobl,");
QueryEDP->SQL->Add("yb_po_dog_dy, yb_ot_real_pnz, price_by_p_imk,");
QueryEDP->SQL->Add("stoim_chist_aktivov, dox_ychr_dov_ypr, vd");
QueryEDP->SQL->Add("FROM dbo.nalog Dbo_nalog WHERE username = :username");
QueryEDP->Params->ParamByName("username")->Value = User_EDP->Caption;
QueryEDP->Open();
Edit18->Text = QueryEDP->FieldByName("name")->AsString;
Edit19->Text = QueryEDP->FieldByName("inn")->AsString;
Edit20->Text = QueryEDP->FieldByName("adress")->AsString;
Edit21->Text = QueryEDP->FieldByName("telefone")->AsString;
Edit2->Text = QueryEDP->FieldByName("dox_iskl_iz_prib")->AsString;
Edit15->Text = QueryEDP->FieldByName("proc_bank_o")->AsString;
Edit16->Text = QueryEDP->FieldByName("vir_ot_real_cb")->AsString;
Edit17->Text = QueryEDP->FieldByName("vir_ot_real_predpr_imk")->AsString;
Edit22->Text = QueryEDP->FieldByName("price_real_pnz")->AsString;
Edit23->Text = QueryEDP->FieldByName("lgots")->AsString;
Edit24->Text = QueryEDP->FieldByName("yb_269")->AsString;
Edit25->Text = QueryEDP->FieldByName("yb_ne_ych_for_nobl")->AsString;
Edit26->Text = QueryEDP->FieldByName("yb_po_dog_dy")->AsString;
Edit27->Text = QueryEDP->FieldByName("yb_ot_real_pnz")->AsString;
Edit28->Text = QueryEDP->FieldByName("price_by_p_imk")->AsString;
Edit29->Text = QueryEDP->FieldByName("stoim_chist_aktivov")->AsString;
Edit30->Text = QueryEDP->FieldByName("dox_ychr_dov_ypr")->AsString;
Edit31->Text = QueryEDP->FieldByName("vd")->AsString;

Panel->Visible = false;
Panel_EDP->Visible = false;
Panel_Perv->Visible = true;
PageControl1->Visible = false;
Panel_Arxiv->Visible = false;
Panel_EDP->Visible = false;
Panel_FINDOPX->Visible = false;
Panel_FINRAI->Visible = false;
Panel_FINRRP->Visible = false;
Panel_FINRYP->Visible = false;
Panel_Help->Visible = false;
Panel_PRTP->Visible = false;
Panel_R_A->Visible = false;
Panel_Reg_New->Visible = false;
Panel_RSRPI->Visible = false;
Panel_RYOV->Visible = false;
Panel_VR->Visible = false;
Panel_YOP->Visible = false;
PanelR_TRR->Visible = false;
PanelRSTSTO->Visible = false;
Panel_BR->Visible = false;
}

Если кто - то может написать пример распределения памяти буду весьма признателен.
 
E
#2
А что вы собираетесь тут распределять? тут уже все "распределено" ...
 
X

xxxsas

#3
в смысле распределено?

У меня при работе программы иногда выскакивает ошибка "Для выполнения операции недостаточно памяти". вот я и подумал - как можно выделить память для реализации отдельной части кода?
 
E
#4
В этом коде ничего к этой ошибке не приведет, ищите не там где светло.
 
X

xxxsas

#5
понятно...такой вопрос еще- можно задать в начале работы своей программы чтобы ей в течении работы выделялся некий постоянный объем памяти? (и кстати есть ли смысл такого выделения)
 
04.09.2006
2 566
3
#6
xxxsas, Вы пытаетесь найти обходы для решения проблемы, но никак не хотите решать проблему. Запускаете программу под отладкой, пытаетесь воспроизвести ошибку, а затем анализируете в коде место падения
 
Вверх Снизу