AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ENUM Vererbung?

Ein Thema von David Martens · begonnen am 22. Feb 2011 · letzter Beitrag vom 23. Feb 2011
Antwort Antwort
David Martens

Registriert seit: 29. Sep 2003
205 Beiträge
 
Delphi XE Enterprise
 
#1

ENUM Vererbung?

  Alt 22. Feb 2011, 17:18
Ist es eigentlich möglich Enums zu vererben?

Danke
David

P.S.: Ich habe Delphi XE
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

AW: ENUM Vererbung?

  Alt 22. Feb 2011, 18:50
Nein. (leider)


Vererbung = Objekte (indirekt auch Interfaces)
Enum = einfacher Typ (fast wie ein Byte/Word/...)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#3

AW: ENUM Vererbung?

  Alt 22. Feb 2011, 19:18
Aber man kann Einschränkungen machen:
Delphi-Quellcode:
TMeinEnum = (meEins, meZwei, meDrei, meA, meB, meC)
TZahlen = meEins..meDrei;
TBuchstaben = meA..meC;
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
David Martens

Registriert seit: 29. Sep 2003
205 Beiträge
 
Delphi XE Enterprise
 
#4

AW: ENUM Vererbung?

  Alt 23. Feb 2011, 14:01
Mal etwas konkreter, vielleicht hab ich ja auch schon eine Lösung.

In dem Enum stehen alle Filter. Jetzt habe ich für verschiedene Programme unterschiedliche Filter. Bisher wurde das über Compilerflags geregelt:

Delphi-Quellcode:
  
  {$IFDEF X1}
  {$ELSE}
  {$ENDIF}
Überall muß das rein.

Um das zu umgehen habe ich folgendes versucht:

Unit1:
Delphi-Quellcode:
{$IFDEF PROG1}
,
Filter1,
Filter2,
Filter3
{$ENDIF PROG1}
Unit2:
Delphi-Quellcode:
{$IFDEF PROG2}
,
FilterA,
FilterB,
FilterC
{$ENDIF PROG2}
Unit3:
Delphi-Quellcode:

type
  TFilterEnum = (
    FilterInizial
    {$INCLUDE 'Unit1.pas'}
    {$INCLUDE 'Unit2.pas'}
  );

const
  c_Filter_First = Low (TFilterEnum);
  c_Filter_Last = High(TFilterEnum);
Wahlweise dir IFDEFs auch um die INCLUDEs.

Zum Benutzen muß ich dann nur Unit3 einbinden. Leider kappt das aber nicht so wie gewollt. Ein {$DEFINE PROG1} wird nicht erkannt. Bei den "alten" Programmen geht es (die wurden von Delphi 2006 auf XE umgestellt) aber wenn ich ein neues anlege scheint die Buildkonfiguration in der hinsicht nicht mehr richtig zu funktionieren.

Danke David
  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 19:10 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