AGB  ·  Datenschutz  ·  Impressum  







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

Frage zu Fehlern im Buch

Ein Thema von Pseudemys Nelsoni · begonnen am 23. Jan 2004 · letzter Beitrag vom 23. Jan 2004
Antwort Antwort
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#1

Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 09:55
Moin,

ich hab einige(!) Fragen zu Fehlern(?) meines Buches "Jetzt lerne ich Delphi" (Daniel müsste es kennen ). Hat aber alles mit dem Thema "Frage zu Fehlern im Buch" zu tun, also brauch ich wohl jetzt nicht mehrere threads oder

also

zu 1.

Delphi-Quellcode:
Type TWochenTag = (Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Samstag, Sonntag);
     TNachtwaechter = Record
                        Vorname,
                        Nachname,
                        Strasse,
                        PLZ_Ort: string;
                      end;

...

VAR Nachtwaechter: Array[Montag..Sonntag] of TNachtwaechter;

...

If Nachtwaechter[Dienstag].Name = 'Maierthen ...;

Mal abgesehen davon das eine Zuweisung an "Name" nicht möglich ist, da im Typ nur "Vorname" und "Nachname" Existieren, frag ich mich, wieso ich innerhalb von "Nachtwaechter" "Dienstag" verwenden kann, Die Typen gehören doch garnicht zusammen oder? Nachtwaechter = TNachtwaechter und Dienstag = TWochenTag.


zu 2.

im Buch steht folgendes wie man ein konstantes array deklariert:

CONST A: Array[1..5] of Integer = (10,11,12,13,14,15); Das hier ist doch ein Array mit 5 elementen oder? wieso werden dann 6 konstanten zugewiesen? ist das ein Fehler oder kapier ich hier was nicht?
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#2

Re: Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 10:02
Zitat von Pseudemys Nelsoni:
Delphi-Quellcode:
VAR Nachtwaechter: Array[Montag..Sonntag] of TNachtwaechter;

If Nachtwaechter[Dienstag].Name = 'Maierthen ...;
Mal abgesehen davon das eine Zuweisung an "Name" nicht möglich ist, da im Typ nur "Vorname" und "Nachname" Existieren, frag ich mich, wieso ich innerhalb von "Nachtwaechter" "Dienstag" verwenden kann.
Aber Du deklarierst ein Array vom Typ TNachtwaechter mit den 7 Elementen von TWochentag.

Will heissen: Du hast für jeden Wochentag auch einen Nachtwaechter[Wochentag] deklariert. Da kannst Du dann freilich nicht mit .Name drauf wie Du schon gesagt hast, aber .Vorname und .Nachname tun da drauf.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#3

Re: Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 10:06
Zitat:
Aber Du deklarierst ein Array vom Typ TNachtwaechter mit den 7 Elementen von TWochentag.
und wenn ich das nicht möchte? ich meine, die Typen gehören doch garnicht zusammen oder?
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#4

Re: Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 10:14
Du kannst auch folgendes machen:

Delphi-Quellcode:
VAR Nachtwaechter: Array[1..7] of TNachtwaechter;

If Nachtwaechter[2].Name = 'Maierthen ...;
Das macht prinzipiell genau das gleiche: Ein array mit 7 elementen wird erzeugt und auf das zweite Element zugegriffen.

Die erste Methode hat halt den Vorteil, das die Elemente sprechende Namen haben. So musst Du immer gucken: 6 war der Nachtwächter von welchem Tag? Ah, ja: Montag = 1, Dienstag = 2, Mittwoch = 3 ... Samstag = 6.

Also schreibst Du anstelle von Nachtwaechter[Samstag] halt Nachtwachter[6].

Ich finde ersteres einfach besser lesbar.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#5

Re: Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 10:19
hoi Phoenix,

Zitat:
Array[Montag..Sonntag] of TNachtwaechter;
ich dachte hinter dem "Array[Montag..Sonntag] of" muss auch der entsprechende typ der elemnte der [] klammern kommen? also ich dachte da geht NUR TWochenTage
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#6

Re: Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 10:23
Zitat von Pseudemys Nelsoni:
hoi Phoenix,
Zitat:
Array[Montag..Sonntag] of TNachtwaechter;
ich dachte hinter dem "Array[Montag..Sonntag] of" muss auch der entsprechende typ der elemnte der [] klammern kommen? also ich dachte da geht NUR TWochenTage
Dann könntest Du ein Array[1..10] auch nur als 'of Integer' deklarieren

Die Synatx ist: Array[INDEX-Elemente des Arrays] of 'Typ der einzelnen Elemente des Arrays'.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#7

Re: Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 10:28
dann versteh ichs, danke .

kannst du mir z letzterem noch sagen, ob es einfach ein fehler im buch war? dann kann ich beruhigt weiter lesen <g>
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#8

Re: Frage zu Fehlern im Buch

  Alt 23. Jan 2004, 10:31
Ich bin mir nicht sicher ob das Element '0' nicht auch epxlizit angelegt wird, will heissen, ob in A[0] nicht auch ein Wert stehen kann obwohl eigentlich nur A[1] bis A[5] deklariert wurden.

Sorry, das müsstest Du einfach mal ausprobieren.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  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 07:48 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