Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Runtime error - array of string как атрибут класса   Найти похожие ветки 

 
Tassadar   (2010-05-08 19:35) [0]

Всем привет!

Очень давно не садился за Делфи, а вот сейчас появилась необходимость написать одну программку, и столкнулся с такой проблемой.

Есть какой-то класс, одним из атрибутов которого является array of string. Например, такой:

unit Unit1;

interface

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

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

 TTest = class(TObject)

 public
 arr: array of string;

 private

 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
Test:TTest;
begin

Test.Create;

end;

end.


При создании объекта Test выдает Runtime error - access violation.

При этом если в описании arr убрать array и оставить просто string, программа работает.

Я чувствую, что где-то здесь я дурак, но не могу понять, где именно. Подскажите, пожалуйста, если найдете минутку, почему возникает ошибка, и как было бы правильно работать с атрибутами класса вида array of string?

Заранее спасибо.


 
Германн ©   (2010-05-08 19:45) [1]


> Я чувствую, что где-то здесь я дурак, но не могу понять,
>  где именно.

Вот тут:

> Test.Create;
>


 
Tassadar   (2010-05-08 19:47) [2]

Точно, Test := TTest.Create.

Спасибо :-)


 
sniknik ©   (2010-05-08 19:49) [3]

> почему возникает ошибка
это чудо... вполне серьезно, результат подобного "создания" непредсказуем, т.е. ошибки могло и не быть, но это все равно было бы неправильным, и в конце концов "рвануло бы" только с большими последствиями.
т.что кто то тебя хранит...



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.088 c
2-1270634702
Sairex
2010-04-07 14:05
2010.08.27
Как программно скопировать строку Excel


15-1274781377
boriskb
2010-05-25 13:56
2010.08.27
В игрушку с таким интерфейсом даже я поиграл бы


8-1204373917
dambo
2008-03-01 15:18
2010.08.27
полигон и текстура


15-1275550373
12
2010-06-03 11:32
2010.08.27
pascal.Напомните, пожалуйста, как там возвращать значение функции


2-1271343332
JohnKorsh
2010-04-15 18:55
2010.08.27
Как нажать кнопку в чужом приложении.