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

Вниз

Динамические массивы в классах   Найти похожие ветки 

 
AndreyAG ©   (2002-11-11 10:36) [0]

Уважаемые Мастера! Помогите! В RunTime Ошибка в методе TWin:Create
Зараннее спасибо !

unit TTreeViewPlus;

interface


type

TWin=class
private
InSignals:array of boolean;
OutSignals:array of boolean;
RealSignals:array of boolean;
public
procedure Create();

end;



implementation

{ TWin }

procedure TWin.Create;
var
i:Integer;
begin
inherited Create();
SetLength(InSignals,8);
SetLength(OutSignals,8);
SetLength(RealSignals,8);
end;
end.


 
VaS ©   (2002-11-11 10:45) [1]

constructor Create();


 
icWasya ©   (2002-11-11 10:46) [2]

unit TTreeViewPlus;

interface


type

TWin=class
private
InSignals:array of boolean;
OutSignals:array of boolean;
RealSignals:array of boolean;
public
constructor Create();//!!!!!!!!!!!!!!!!!!!!

end;



implementation

{ TWin }

constructor TWin.Create;//!!!!!!!!!!!!!!!!!!!!!!
var
i:Integer;
begin
inherited Create();
SetLength(InSignals,8);
SetLength(OutSignals,8);
SetLength(RealSignals,8);
end;
end.


 
AndreyAG ©   (2002-11-11 10:57) [3]

То что предложил icWasya НЕ ПОМОГАЕТ


 
AndreyAG ©   (2002-11-11 11:01) [4]

Прблема возникает при вызове

SetLength(InSignals,8);
SetLength(OutSignals,8);
SetLength(RealSignals,8);


 
Smithson ©   (2002-11-11 11:02) [5]

Какая проблема7 Мы же все же не на спиритическом сеансе, твои чувства угадывать.
И на какой конкретно строчке из трех - пройди отладчиком


 
AndreyAG ©   (2002-11-11 11:12) [6]

Ошибка на строчке
SetLength(InSignals,8);

procedure DynArraySetLength(var a: Pointer; typeInfo: Pointer; dimCnt: Longint; lengthVec: PLongint);
var
i: Integer;
newLength, oldLength, minLength: Longint;
elSize: Longint;
neededSize: Longint;
p, pp: Pointer;
begin
p := a;// ВОТ ЗДЕСЬ ОШИБКА
........................
end;



 
Внук ©   (2002-11-11 11:22) [7]

>>AndreyAG © (11.11.02 11:12)
То, что написано в icWasya © (11.11.02 10:46), работает без проблем, да и не может быть иначе...


 
AndreyAG ©   (2002-11-11 11:46) [8]

Действительно работает если потом вызывать вот так:
procedure TMain.Button1Click(Sender: TObject);
var
A:TWin;
begin
A.Create;
end;

А если так то неработает

//*****************
var
A:TWin;
implementation

procedure TMain.Button1Click(Sender: TObject);

begin
A.Create;
end;

Т.е если объект локальный к процедуре то работает , а если
глобальный то нет ! Странно!


 
Skier ©   (2002-11-11 11:48) [9]

>AndreyAG
Мда..........
ВНИМАНИЕ !!! СОЗДАНИЕ ОБЪЕКТОВ !!! :)

procedure TMain.Button1Click(Sender: TObject);
var
A:TWin;
begin
A := TWin.Create;
try
//...работа с A...
finally
FreeAndNil(A);
end; //try
end;


 
AndreyAG ©   (2002-11-11 11:53) [10]

>Skier
Действительно Мда...
Огромное спасибо!



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

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

Наверх




Память: 0.49 MB
Время: 0.017 c
1-69360
Nicko
2002-11-10 10:08
2002.11.21
Реестр


1-69246
Nick-From
2002-11-09 21:37
2002.11.21
Такой вот вопрос


1-69237
Sergy
2002-11-11 17:29
2002.11.21
Createprocess


14-69550
RV
2002-11-04 09:56
2002.11.21
Как получить результат из asm-процедуры, скажем, в строку?


3-69221
Vityanya
2002-11-01 01:58
2002.11.21
НЕ работает БД