Einzelnen Beitrag anzeigen

Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.838 Beiträge
 
Delphi 10 Seattle Enterprise
 
#21

Re: Variable mit mehreren Werten vergleichen ohne "OR&a

  Alt 28. Nov 2006, 13:26
Zitat von Hawkeye219:
hier eine Erweiterung deiner Idee:
Stimmt, dynamisches Array ist an der Stelle Schwachsinn

AnsiIdentText kannte ich auch noch nicht.
Man lernt ja nie aus.

Die Funktion gibts schon in D7 und sieht wie folgt aus:
Delphi-Quellcode:
{ *********************************************************************** }
{ Delphi Runtime Library                                                  }
{ Copyright (c) 1995-2001 Borland Software Corporation                    }
{ *********************************************************************** }
unit StrUtils;
...
function AnsiIndexText(const AText: string;
  const AValues: array of string): Integer;
var
  I: Integer;
begin
  Result := -1;
  for I := Low(AValues) to High(AValues) do
    if AnsiSameText(AText, AValues[I]) then
    begin
      Result := I;
      Break;
    end;
end;
...
Das ist also fast das gleiche wie unser Beispiel.

In der AnsiSameText wird schliesslich noch eine Weitere Funktion aufgerufen, die dann noch eine aufruft und diese ruft dann folgende Win API auf:
function CompareString; external kernel32 name 'CompareStringA'; Die im Grunde aber auch nur ein aText = aValues[I] macht

In eigener Sache (Zitat aus Borland VCL / RTL)
Anmerkung zum Zitat:
Die Verwendung von Zitaten ist durch das Urheberrecht geregelt und unter bestimmten Voraussetzungen gestattet, ohne dass eine Erlaubnis des Urhebers eingeholt oder diesem eine Vergütung gezahlt werden müsste (§ 51 UrhG in Deutschland)
Es handelt sich hier um ein Kleinzitat.
Kleinzitate dürfen weiterreichend verwendet werden. Der Zitierzweck muss erkennbar sein. Das Zitat muss also in irgendeiner Beziehung zu der eigenen Leistung stehen, beispielsweise als Erörterungsgrundlage. Der Umfang des Zitats muss dem Zweck angemessen sein.
(frei zitiert aus Wikipedia: Zitat)
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat