AGB  ·  Datenschutz  ·  Impressum  







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

Recordvariabeln vergleichen...

Ein Thema von Bastler · begonnen am 17. Mai 2007 · letzter Beitrag vom 17. Mai 2007
Antwort Antwort
Bastler

Registriert seit: 15. Aug 2006
153 Beiträge
 
Delphi 7 Personal
 
#1

Recordvariabeln vergleichen...

  Alt 17. Mai 2007, 13:11
Hallo;

Kann ich irgendiwe gucken ob bestimmte Werte von verschieden Records gleich sind?

Folgender Beispielcode:

Delphi-Quellcode:
type TRec1 = record
     a,b,c:boolean;
     i:integer;
     end;

type TRec2 = record
     var1,var2,var3,var4:TRec1;
     end;

var record:TRec2;
Jetzt möchte ich schauen, ob z.b. bei record.var1,record.var2 und record.var3 "b" jeweils auf True ist?

Gibt es eine Funktion, die dies hier übernimmt?

Delphi-Quellcode:
procedure pro1;
begin
if var1.b then //...
if var2.b then //...
if var3.b then //...
end;
Damit ich die nich alle auflisten muss? bei diesem Beispiel hier gehts noch, aber mein Record hat ~50 Variablen und die sind auch nicht so systematsich benannt, wie hier mit var1 usw...

Ich suche also quasie eine art For-Schleife für Records; also sowas in der Art
Delphi-Quellcode:
//Pseudo-Code
For i:=0 to anzahl_der_elemente_im_record do
  begin
  if record.element[i].b then //...
  end;
Ich hoffe Ihr versetht, was ich meine/suche...

Danke an alle die sich mit meinem Problem auseinander setzten...
Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber beim Universum bin ich mir noch nicht ganz sicher
(A. Einstein)
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Recordvariabeln vergleichen...

  Alt 17. Mai 2007, 13:13
Es hilft, wenn du die boolean-Elemente des Records zu einem Array zusammenfasst. Dann kann man die Werte nämlich mit einer for-Schleife und der boolschen Verknüpfung and durchgehen.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
Bastler

Registriert seit: 15. Aug 2006
153 Beiträge
 
Delphi 7 Personal
 
#3

Re: Recordvariabeln vergleichen...

  Alt 17. Mai 2007, 13:16
Naja, dann kann ich die Bools der Reihe nach durchschauen, aber doch nich die Elemente aus dem Rec2, oder habe dich dich falsch verstanden?
Zwei Dinge sind unendlich, das Universum und die menschliche Dummheit, aber beim Universum bin ich mir noch nicht ganz sicher
(A. Einstein)
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Recordvariabeln vergleichen...

  Alt 17. Mai 2007, 13:38
Die Benennungen var1, var2, var3, var4 schreien doch nach einem Array! ebenso a,b,c. Dann kannst du einfach ein Verschachtelte for-Schleife benutzen.
Delphi-Quellcode:
for i:=0 to 4 do
  for j:=0 to 3 do
    begin
     if meinrecord.variable[i].boolescherWert[j] then
      //...
    end;
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  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 17:34 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