Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка в переменных. 
V
    Опции темы
Mauglirus
Дата 23.12.2007, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.12.2007

Репутация: нет
Всего: нет



Посмотрите код:

Код

unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
const
m=15;
c=15;
Var
 { m: integer; }
  i1:integer;
  i2:integer;
  j:integer;



  type
  TForm2 = class(TForm)
    GroupBox1: TGroupBox;
    GroupBox2: TGroupBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Edit5: TEdit;
    Edit6: TEdit;
    Edit7: TEdit;
    Edit8: TEdit;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Button1: TButton;
    Edit9: TEdit;
    Label10: TLabel;
    Button2: TButton;
    Label11: TLabel;
    Button3: TButton;
    Button4: TButton;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);

  end;



 type TProduct=class
  public
   Name: string [15];
   ZatrEdProd : real;
   PriseEdProd : real;
   V_Prod : array[0..m] of real;
   A_Prod : array[0..m+1] of real;
   procedure PutV_Prod(i: integer);
   procedure PutA_Prod(i: integer);
  end;

  Tpredpr=class
   RezFin: real;
   Kredit: real;
   ZatrPost: real;
   betta: real;
   product:array[1..c] of Tproduct;
   procedure PutRezFin;
   procedure putKredit;
   procedure putZatrPost;
   procedure putbetta;
  end;

var
  Form2: TForm2;
  predpr: Tpredpr;

implementation

{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject);
begin
   i1:=1; i2:=1;j:=1;
   Label9.Caption:='Период n-'+IntToStr(i1);
   Label11.Caption:='Период n-'+IntToStr(i2-1);
end;

procedure Tpredpr.PutRezFin;
begin
    RezFin:=StrToFloat(form2.edit1.text);
end;

procedure Tpredpr.putKredit;
begin
    Kredit:=StrToFloat(form2.edit2.Text);
end;

procedure Tpredpr.putZatrPost;
begin
    ZatrPost:=StrToFloat(form2.edit3.Text);
end;

procedure Tpredpr.putbetta;
begin
    betta:=StrToFloat(form2.edit4.Text);
end;

procedure Tproduct.PutV_Prod(i: integer);
begin
    V_Prod[i]:=StrToFloat(form2.Edit8.Text);
end;

procedure Tproduct.PutA_Prod(i: integer);
begin
    A_Prod[i]:=StrToFloat(form2.Edit9.Text);
end;


procedure TForm2.Button1Click(Sender: TObject);
begin
     predpr.product[j].PutV_Prod(i1);
    i1:=i1+1;
    Edit8.Text:='';

end;

end.


При выполнении procedure TForm2.Button1Click(Sender: TObject); выдаеться ошибка
Progect Labolatory.exe raised exception class EAceaaViolation with messafe 'Acess violation at address 00451406 in module 'Labolatory.exe'. Read of address 00000024. Process stopped.use step or Run to continue.'


Пожалуйста помогите
PM MAIL   Вверх
volvo877
Дата 23.12.2007, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2073
Регистрация: 15.11.2004

Репутация: 9
Всего: 116



Mauglirus, ты не инициализировал Predpr, а уже пытаешься его использовать. Конструктор класса вызывать кто будет? 
PM MAIL   Вверх
Mauglirus
Дата 23.12.2007, 22:01 (ссылка)   | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.12.2007

Репутация: нет
Всего: нет



Посмотри строчку 82-84 разве этого не достаточно???
PM MAIL   Вверх
MetalFan
Дата 23.12.2007, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 22
Всего: 128



тебе уже все сказали


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Ofer
Дата 23.12.2007, 23:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 293
Регистрация: 15.10.2006
Где: КривбаСС

Репутация: нет
Всего: 5



Mauglirus, инициировать - это predpr := Tpredpr.Create;
PM MAIL ICQ   Вверх
Mauglirus
Дата 24.12.2007, 00:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.12.2007

Репутация: нет
Всего: нет



Большое спасибо
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.7978 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.