Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.08.2008, 11:50   #1
profi
Участник клуба Подтвердите свой е-майл
 
Регистрация: 19.11.2007
Сообщений: 1,022
По умолчанию Помогите со структурами в Delphi

У меня возникла проблема с задачей. Нужно создать массив структур и в него записать например 3 элемента. Вроде бы все правильно делаю, но выдазит ошибка - "[Error] Unit1.pas(42): Type 'TMyRec' needs finalization - not allowed in file type", а вот код формы:

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls;

type
  TForm1 = class(TForm)
    RichEdit1: TRichEdit;
    RichEdit2: TRichEdit;
    RichEdit3: TRichEdit;
    RichEdit4: TRichEdit;
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

type TMyRec=record
vopr:string;
otv1:string;
otv2:string;
otv3:string;
otv4:integer;
end;
TMyRecArray=array[0..50] of TMyRec;
var
  Form1: TForm1;
  n:integer;
  MyArray:TMyRecArray;
  f:file of TMyRec;//вот строка где вылазит ошибка

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
assignfile(f,'D:\TestDelphi\quest.dat');
rewrite(f);
n:=StrToInt(Edit2.Text);
for i:=0 to n do
begin
with MyArray[i] do
begin
vopr:=RichEdit1.Lines.GetText;
otv1:=RichEdit2.Lines.GetText;
otv2:=RichEdit3.Lines.GetText;
otv3:=RichEdit4.Lines.GetText;
otv4:=StrToInt(Edit1.Text);
end;
end;
for i:=1 to n do
write (f,MyArray[i]);
closefile(f);
end;

end.
profi вне форума Ответить с цитированием
Старый 24.08.2008, 12:05   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Код:
type TMyRec=record   
vopr:string[100];//длина 100
eoln вне форума Ответить с цитированием
Старый 24.08.2008, 12:15   #3
Ozerich
Студент 1 курса
Форумчанин Подтвердите свой е-майл
 
Аватар для Ozerich
 
Регистрация: 27.06.2008
Сообщений: 959
По умолчанию

Читай тут
http://programmersforum.ru/showthread.php?t=23495
C++(STL, QT, WinInet) / DHTML(CSS) / JavaScript / PHP Developer
Ozerich вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с Delphi Lenusik Помощь студентам 0 31.05.2008 21:36
Проблема с модулями и дин.структурами данных velgelmina Помощь студентам 1 16.05.2007 06:43