Entwickler-Ecke

Programmierwerkzeuge - E2064 der linken Seite kann nichts zugewiesen werden


WPoschen - Do 04.02.10 16:27
Titel: E2064 der linken Seite kann nichts zugewiesen werden
IDE: Delphi 5, Delphi 2010.
Plattform: WinXP Pro.
Vorhaben: Altanwendung soll mit aktuellem IDE bearbeitet werden.

Kenntnisstand Delphi: Anfänger.
Hintergrund: C++, Java, C#.


Hallo,

ich habe eine alte unter Delphi 5 geschriebene Anwendung,
die ich gerne in Delphi 2010 kompilieren möchte.

In genau einem Modul kommt beim Compilieren dieser Codezeile


Delphi-Quelltext
1:
maxFH[per]:=(a_fh*D/15+b_fh)*ffp/100                    


die Fehlermeldung
E2064 der linken Seite kann nichts zugewiesen werden

dabei ist array maxFH wie folgt definiert worden

Delphi-Quelltext
1:
maxFH:array[0..zyklen] of double;                    


versuchsweise habe ich gesetzt

Delphi-Quelltext
1:
maxFH:array[0..zyklen] of extended;                    


das hat nicht geholfen.

Der Array ist nicht in dem Modul deklariert, in dem er
verwendet wird, aber das Modul, in dem er deklariert ist
wird über uses importiert.

Vielen Dank für jeden Hinweis


kkausp - Do 04.02.10 17:08

Ich hoffe das haste schon gelesen:

http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/cm_not_assignable_xml.html


Ich hoffe maxfh ist im Interface Teil als Variable deklariert und nicht als Konstante oder irgendwo verschachtelter Bestandteil einer Klasse.

Var
maxFH: ......


WPoschen - Do 04.02.10 17:38

Zitat:
[quote="user profile iconkkausp"(594443)]Ich hoffe das haste schon gelesen:

http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/devcommon/cm_not_assignable_xml.html


Ja, hab ich gleich gelesen. Ich nehme an, von diesen Fällen trifft keiner zu


Zitat:
Ich hoffe maxfh ist im Interface Teil als Variable deklariert und nicht als Konstante oder irgendwo verschachtelter Bestandteil einer Klasse.

Var
maxFH: ......


Ich habe nochmals nachgesehen - in der Tat ist es nicht unter var deklariert sondern unter type als Member eines record in der Form


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
type
..
matrec = record
   ..
   maxFH : array[0..zyklen] of real; {auch gesetzt double, extended}
   ..
end;

allebaum = array[1..maxtree] of ^matrec; {Typdeklaration als Array von matrec-Pointern}
allbaum = ^allebaum;
..
var
..
baum : allbaum; {Variablendeklaration Pointer auf Array von Pointer auf matrec-Instanzen, jede hat maxFH - array}


Anderes Modul:


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
with (baum^[b]^) do
begin
..
maxFH[per]:=(a_fh*D/15+b_fh)*ffp/100
..
end;