AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Delphi Compiler findet gelegentlich klassenlokal definierte Typen nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Compiler findet gelegentlich klassenlokal definierte Typen nicht

Ein Thema von Codehunter · begonnen am 23. Aug 2018 · letzter Beitrag vom 27. Aug 2018
 
Benutzerbild von Codehunter
Codehunter

Registriert seit: 3. Jun 2003
Ort: Thüringen
2.272 Beiträge
 
Delphi 10.4 Sydney
 
#1

Compiler findet gelegentlich klassenlokal definierte Typen nicht

  Alt 23. Aug 2018, 07:31
Moin!

Mir passiert es immer wieder, dass bei einem einfachen Compilerlauf (STRG-F9) klassenlokal definierte Typen nicht gefunden werden:
Delphi-Quellcode:
unit A;

interface

uses
  System.Classes;

type
  TMyClass = class(Object)
  public type
    TMyEnum = (enA, enB, enC);
  end;

{...}

unit B;

interface

{...}

implementation

uses
  A;

procedure Produce;
var
  LEnum = TMyClass.TMyEnum; // <-- E2003 Undeklarierter Bezeichner: 'TMyClass.TMyEnum'
  LEnum2 = TMyEnum; // <-- E2003 Undeklarierter Bezeichner: 'TMyEnum'
begin
  {...}
end;
Das Problem tritt frustrierenderweise nur sporadisch auf. Dagegen hilft nur, entweder ein Fullbuild oder vor dem Compilieren die DCUs zu löschen. Das ist insofern etwas lästig, weil es sich um ein Package-Projekt handelt, das ich dann jedesmal deinstallieren muss, Delphi schließen und wieder auf, kompilieren, installieren, nochmal schließen und wieder auf.

Wenn ich die Deklaration von TMyEnum aus der Klasse heraus nehme und in eine separate Unit verlege, tritt das Problem nicht auf. Allerdings wäre das der Ordnung und Übersichtlichkeit halber nur die B-Lösung.

Grüße
Cody
Ich mache grundsätzlich keine Screenshots. Schießen auf Bildschirme gibt nämlich hässliche Pixelfehler und schadet der Gesundheit vom Kollegen gegenüber. I und E zu vertauschen hätte den selben negativen Effekt, würde aber eher dem Betriebsklima schaden
  Mit Zitat antworten Zitat
 


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 09:09 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