AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign verschiedene Klassen via Compiler directive erzeugen
Thema durchsuchen
Ansicht
Themen-Optionen

verschiedene Klassen via Compiler directive erzeugen

Ein Thema von bernhard_LA · begonnen am 25. Mai 2017 · letzter Beitrag vom 26. Mai 2017
Antwort Antwort
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.153 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: verschiedene Klassen via Compiler directive erzeugen

  Alt 26. Mai 2017, 08:28
habe mir jetzt eine separate unit angelegt und definiere eine Interface-Alias-KlassenNamen- Klasse, damit ist dann nur eine Stelle + eine Zeile {$define .... } im Code anzupassen wenn ich die Klasse tauschen will und auch nur eine Zeile code in den Units die meine Interface Klasse verwenden


Delphi-Quellcode:
unit Unit_TlicenseAlias;

interface

uses ...... ;


{$define  encrypt_tiny}

{$IFDEF encrypt_full}
 Type TLicenseIClass =class( Tlicense);
{$ifend}

{$IFDEF encrypt_tiny}
  Type TLicenseIClass =class( TlicenseSimple);
{$ifend}

{$IFDEF encrypt_Mock}
  Type TLicenseIClass = class(TlicenseMock);
{$IFEND}


implementation

end.
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.749 Beiträge
 
Delphi 2007 Professional
 
#2

AW: verschiedene Klassen via Compiler directive erzeugen

  Alt 26. Mai 2017, 08:53
habe mir jetzt eine separate unit angelegt und definiere eine Interface-Alias-KlassenNamen- Klasse, damit ist dann nur eine Stelle + eine Zeile {$define .... } im Code anzupassen wenn ich die Klasse tauschen will und auch nur eine Zeile code in den Units die meine Interface Klasse verwenden

Das "class" kannst du dir ggfs. noch sparen:
type TLicenseIClass = TLicense; geht auch.
Uli Gerhardt
  Mit Zitat antworten Zitat
bepe

Registriert seit: 17. Okt 2006
119 Beiträge
 
#3

AW: verschiedene Klassen via Compiler directive erzeugen

  Alt 26. Mai 2017, 09:11

Das "class" kannst du dir ggfs. noch sparen:
type TLicenseIClass = TLicense; geht auch.
Im aktuellen Fall sicher ok, vermutlich sogar gewünscht. Generell sollte man, für Mitleser, aber erwähnen dass man ohne Class nur einen Alias definiert.

Delphi-Quellcode:
type TLicenseIClass = TLicense; // ob man später TLicenseIClass oder TLicense verwendet macht keinerlei Unterschied (TLicenseIClass = TLicense: True)
type TLicenseIClass = class(TLicense); // hier ist TLicenseIClass eine eigenständige Klasse, welche von TLicense erbt (TLicenseIClass = TLicense: False)

mfg,
bp
  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 21:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz