AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Redefinition eines Typs wird nicht erkannt
Thema durchsuchen
Ansicht
Themen-Optionen

Redefinition eines Typs wird nicht erkannt

Ein Thema von p80286 · begonnen am 26. Jul 2011 · letzter Beitrag vom 27. Jul 2011
Antwort Antwort
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#1

Redefinition eines Typs wird nicht erkannt

  Alt 26. Jul 2011, 18:30
Hallo zusammen,

durch Zufall ist mir aufgefallen, daß ich in zwei Units, die im gleichen Programm genutzt werden, den gleichen Typ definiert habe:

Delphi-Quellcode:
Unit1
interface
type
  t_pnr = array [1..8] of char;

Unit2
interface
uses
  Unit1;
type
  t_pnr = array [1..8] of char;
Ich habe eigentlich angenommen, daß ich jetzt so richtig Fehlermeldungen bekomme, aber still ruht der See.
Wenn iich die Definition in Unit2 auskommentiere hagelt es Fehlermeldungen. Also wird die Definition in Unit1 nicht erkannt, aber warum?

(die DCUs habe ich alle gelöscht)
Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#2

AW: Redefinition eines Typs wird nicht erkannt

  Alt 26. Jul 2011, 18:41
Hallo zusammen,

durch Zufall ist mir aufgefallen, daß ich in zwei Units, die im gleichen Programm genutzt werden, den gleichen Typ definiert habe:

Delphi-Quellcode:
Unit1
interface
type
  t_pnr = array [1..8] of char;

Unit2
interface
uses
  Unit1;
type
  t_pnr = array [1..8] of char;
Ich habe eigentlich angenommen, daß ich jetzt so richtig Fehlermeldungen bekomme, aber still ruht der See.
Das ist sowohl syntaktisch korrekt, durchaus erlaubt und überdies auch manchmal auch so gemeint.


Wenn iich die Definition in Unit2 auskommentiere hagelt es Fehlermeldungen. Also wird die Definition in Unit1 nicht erkannt, aber warum?
Wo kommen denn die Fehlermeldungen und wie lauten sie?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: Redefinition eines Typs wird nicht erkannt

  Alt 26. Jul 2011, 18:47
Das kann ich hier nicht nachvollziehen. Solange der Typ im Interface-Abschnitt deklariert ist, kann ich ihn auch in der anderen Unit benutzen. Allerdings habe ich mir eine vorherige erneute Deklaration gespart.
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
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Redefinition eines Typs wird nicht erkannt

  Alt 26. Jul 2011, 23:16
Wo kommen denn die Fehlermeldungen und wie lauten sie?
unbekannter Typ "T_pnr".

Solange der Typ im Interface-Abschnitt deklariert ist, kann ich ihn auch in der anderen Unit benutzen.
Ist korrekt, ich war über die Redifinition einer Variablen gestolpert.


Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector

Geändert von p80286 (26. Jul 2011 um 23:31 Uhr)
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.464 Beiträge
 
Delphi 12 Athens
 
#5

AW: Redefinition eines Typs wird nicht erkannt

  Alt 27. Jul 2011, 08:36
Wo kommen denn die Fehlermeldungen und wie lauten sie?
unbekannter Typ "T_pnr".

Solange der Typ im Interface-Abschnitt deklariert ist, kann ich ihn auch in der anderen Unit benutzen.
Der Typ kann erst in Zeilen verwendet werden, die nach dem uses Unit1; stehen.
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#6

AW: Redefinition eines Typs wird nicht erkannt

  Alt 27. Jul 2011, 10:25
Schande über mich, Ich hatte einen kommentar sehr unglücklich gesetzt (weit rechts ausserhalb der Anzeige).

Könnte man das hier bitte löschen?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  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 15:19 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