AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi zwei elemente im Array sind 'inkompatbleTypen' ???
Thema durchsuchen
Ansicht
Themen-Optionen

zwei elemente im Array sind 'inkompatbleTypen' ???

Ein Thema von Nikolas · begonnen am 28. Feb 2004 · letzter Beitrag vom 29. Feb 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#1

zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 22:39
Ich versuche für einen Terminklalender eine function zu bauen um mir doppelte Eintragungen in einem array of Records (Terminliste) rauszuschneiden.

Nur hab ich hier einen Fehler bei dem ich keine Ahnung habe, was ich falsch gemacht habe:

Ich bekomm die Meldung 'Inkompatible Typen', obwohl es zwei Elemente aus einem array sind, und bei der Zuweisung ein paar Zeilen weiter wird auch nicht gemeckert

Delphi-Quellcode:
for i:=0 to length(Terminliste)-2 do
begin
        if Terminliste[i] = Terminliste[i+1] then <--- Hier gibts die Fehlermeldung
        begin
                for j := i to length(Terminliste)-2 do // Verrückung;
                begin
                Terminliste[ j ]:=Terminliste[ j +1];
                inc(loecher);
                end;
        end;
end; // of i:=0 to length(Terminliste)-2
Wer sieht was, das ich nicht sehe?

THXbyTOX
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#2

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 22:43
Hi!

Was ist denn inkompatibel? (Also string und Integer oder ...?)
Was ist in dem Array drin?


Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#3

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 22:46
so sieht das array aus:
Delphi-Quellcode:
Terminliste: Array of Eventrec;

EventRec = Record
        Zeit :string;
        Datum :string;
        Grund : String;
        datetime:TDateTime
    end;
Näheres dazu, was nicht kompatibel sein soll, bekomm ich leider nicht.

Tox
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#4

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 22:53
Hi!

Sind es bestimmt Einträge, Einträge an einer gewissen Stelle, besonderer Inhalt etc.?

Andere Frage:
Macht die 2. For-Schleife etwas? Das i bleibt doch dort immer gleich, oder sehe ich da was nicht? Das j verwendest du ja nicht.


Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 22:53
Ich bin mir nicht ganz 100% sicher, aber selbsst wenn das geh'n würde...

werden dan nicht nur die Zeiger der Strings verglichen, welche natürlich unterschiedlich sind und nicht die Stringinhalte?



versuchs mal so:
Delphi-Quellcode:
EventRec = packed Record
    Zeit : String[55]; // die 55 sind nur Beispiele
    Datum : String[55];
    Grund : String[55];
    datetime: TDateTime
  End;
(denn ShotStrings arbeiten anders)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#6

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 23:04
@fkerber

es stehen nur einn paar strings und die datetiem drin, irgenwas apektakuläres gibts da nicht.

- Ich hab mein erstes post bezüglich des J editiert. Ob das ganze klappt konnte ich noch nicht testen

@himitsu

ich hab's mal mit dem packed array versucht, es machts nich besser

Aber Danke schon mal

Tox
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 23:09
Auf alle Fälle müssen es ShortStrings sein. Aber das erklärt deine Fehlermeldung nicht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#8

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 28. Feb 2004, 23:14
Ich hab die Deklarartin für das Record mal in shirtstring geändert, aber mit dem gewohnten Erfolg

THXbyTOX
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#9

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 29. Feb 2004, 10:07
Zitat von Toxman:
Ich hab die Deklarartin für das Record mal in shirtstring geändert, aber mit dem gewohnten Erfolg

THXbyTOX
sorry für OT, aber das das zweite durch i ersetzte O liest sich sehr witzig...
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: zwei elemente im Array sind 'inkompatbleTypen' ???

  Alt 29. Feb 2004, 11:08
Man kann Records zwar einander zuweisen, aber man kann sie nicht auf Gleichheit überprüfen. Entweder Element für Element vergleichen oder den Speicherbereich vergleichen:

if CompareMem(@Record1, @Record2, Sizeof(Record1)) then //...
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 06:59 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