![]() |
pascal ausdruck auswerten
ich habe folgendes problem
und zwar muss der folgende ausdruck aus einer textdatei ausgewertet werden: EineKonstante = irgendwas (EineKonstante >= 2.0) -> TRUE oder FALSE das auslesen der symbole einekonstante > = 2.0 ist schon möglich nur wie kann ich den ausdruck auf TRUE oder FALSE auswerten? ich habe leider nichts vergleichbares gefunden thx |
Moin Dezipaitor,
ich würde das anders trennen EineKonstante >= 2.0 Oder allgemein EineKonstante EinComparator EinVergleichswert Die einfache Variante ginge dann mit if/then, bei der aufwändigeren könntest Du Dir eine Tabelle (TStringList) der möglichen Comparatoren erstellen, und dabei als Objekt eine Kennung die angibt, welcher Comparator das ist, so dass Du case/of benutzen kannst. Stilisiert:
Delphi-Quellcode:
function Vergleiche(EineKonstante,EinVergleichswert,EinComparator) : boolean;
begin if EinComparator = '>=' then begin Result := EineKonstante >= EinVergleichsWert; exit; end; // ... end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:44 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 by Thomas Breitkreuz