AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Inkompatible Typen obwohl Deklaration identisch
Thema durchsuchen
Ansicht
Themen-Optionen

Inkompatible Typen obwohl Deklaration identisch

Ein Thema von lugy2001 · begonnen am 27. Feb 2008 · letzter Beitrag vom 27. Feb 2008
Antwort Antwort
lugy2001

Registriert seit: 27. Feb 2008
2 Beiträge
 
#1

Inkompatible Typen obwohl Deklaration identisch

  Alt 27. Feb 2008, 19:48
Ich sitz im Moment an meiner Facharbeit (Stufe 12) die dringend fertig werden muss und ich komm nicht weiter wegen eines Fehlers der für mich einfach unerklärlich ist:

In zwei Units also auch 2 Klassen verwende ich den Datentyp TExtBewegGerade, wenn ich jetzt aber von dem Formular auf die Klasse zu greifen will sagt mir der Debugger immer, dass die Dateitypen inkompatibel sind obwohl sie definitiv gleich sind (hab mind. 10 mal Copy+Paste gemacht).

Delphi-Quellcode:
[...]
type
  TExtBewegGerade = record
    M: extended;
    N: extended;
    Richtung : Shortint; //-1,0,1
    PosX : extended;
    PosY : extended;
  end;
  [...]
  TSpieler = class(TComponent) [...]
Delphi-Quellcode:
[...]type
  TExtBewegGerade = record
      M: extended;
      N: extended;
      Richtung : Shortint; //-1,0,1
      PosX : extended;
      PosY : extended;
    end;
  TAlleSpieler = array[1..6] of TSpieler;
  TSpiel = class(TForm)

[...]
procedure TSpiel.tiBewegungTimer(Sender: TObject);
begin
[...]
BewegGeradeI := AlleSpieler[i].getBewegGerade; //hier tritt der fehler auf ([Pascal Fehler] mSpiel.pas(165): E2010 Inkompatible Typen: 'mSpiel.TExtBewegGerade' und 'mSpieler.TExtBewegGerade')
BewegGeradeJ := AlleSpieler[j].getBewegGerade; //hier auch
[...]
end;
Versucht hab ich schon den Typ umzubennen, die Deklaration mit in die procedure rein zu nehmen... hat alles nix gebracht.

Ich hoffe ihr könnt mir helfen. Bis jetzt hat mir DP schon per Suche viel geholfen

lugy2001
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Inkompatible Typen obwohl Deklaration identisch

  Alt 27. Feb 2008, 19:49
Du darfst den Typ nur einmal deklarieren
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#3

Re: Inkompatible Typen obwohl Deklaration identisch

  Alt 27. Feb 2008, 19:52
Erstell Dir am Besten eine eigene Unit für Deine Typen, Konstanten etc. und binde diese in beiden Units ein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
lugy2001

Registriert seit: 27. Feb 2008
2 Beiträge
 
#4

Re: Inkompatible Typen obwohl Deklaration identisch

  Alt 27. Feb 2008, 19:58
Danke für die Hilfe und den Tipp! Jetzt gehts natürlich.

Hab soviel versucht.. aber leider nur einmal versucht es auszuklammern.. leider in der falschen Datei.

lugy2001
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

Re: Inkompatible Typen obwohl Deklaration identisch

  Alt 27. Feb 2008, 20:05
tja, in der RTTI(?) steht halt für jede Deklaration ein eigener Eintrag und Typen sind nur identisch, wenn sie auf den selben Eintrag verweisen,
also nur wenn es die selbe Deklaration ist.


Aufbau der Typen wird halt nicht verglichen (was oftmals von Vorteil ist ).
$2B or not $2B
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz