C++ - Menü aus Klassen Pointer

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • C++ - Menü aus Klassen Pointer

    Hallo,

    ich bin "Neuling" in C++. Jedenfals habe ich mich bislang um Pointer herumgedrückt.

    Ich habe folgendes vor:

    Ein Menü in der Shell.

    Quellcode

    1. class cOsdMenuList {
    2. prti:
    3. public:
    4. cOsdMenuList(void);
    5. ~cOsdMenuList(void);
    6. static void readList(const char *Path); // Path = menu.conf
    7. void add(const char *Title);
    8. }
    9. extern cOsdMenuList *OsdMenuList;


    Menü wird dan Denk ich mal so aussehen:
    menu.conf
    1 Punkt 1
    2 Punkt 2
    2.1 Unterpunkt 1
    2.2 Unterpunkt 2

    readList wird dann die menu.conf auslesen, mit add(Punkt 1) add(Punkt 2) add(Unterpunkt 1) add(Unterpunkt 2) add(Punkt 3) soll dann die Liste gebaut und gespeichert werden. ( Mein Gedanke)

    Wie gehe ich dann das Menü durch?
    for(int i=0; i < count(OsdMenuList); i++){
    printf("Title: %s\n", OsdMenuList->Title);
    }

    Wie weis ich ob es ein Submenü ist. Sprich wenn ich auf Punkt zwei gehe muss ich ja die Ausgaben Unterpunkt 1 und 2 bekommen.

    Ich bin verwirrt, Pointe *heul*.

    Wäre echt super wenn mir einer bei dieser Lösung helfen könnte.

    lg
  • Lernt ihr C++ so ?(

    Wenn du die freie Wahl hast, nutze konsequenter C++ und weniger die C-Relikte.
    Kenne kaum Java, aber da scheint dir auch noch ein wenig hinein gerutscht zu sein?

    Wenn du es im gezeigten Stil weiterführen sollst, ist das eigentlich kein guter C++ Einstieg.
    Ja es gibt viele Beispiele aus den C++ Anfängen, die so aussehen. Aber inzwischen sind mehr als 20 Jahre vergangen. Da solltet ihr zwar wissen, das es solchen Code gibt, aber möglichst keinen neuen in dem Stil verfassen, wenn es sich vermeiden lässt.

    Also wie sieht es aus? Dürft ihr z.B. C++ Strings nutzen? Oder muss es da der C-Stil sein?

    Welche Header setzt du? Welchen Compiler nutzt du?

    MfG bcc-fan

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von bcc-fan ()

  • Hallo,

    sprüche klopfen kannst du schon mal.

    hättest mal lieber ein beispiel gegben wie man sowas löst.

    jeder fängt mal klein ....


    was ist den dran falsch wie sollte man es richtig machen? falsch ist keine fehlerbeschreibung.

    bestimmt gibt es beispiele ich hab keine gefunden evtl hab ich falsch gesucht. das vermutte ich stark.

    ja strings können wir benutzen

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>

    gcc version 4.6.3
  • Wer hat denn Probleme mit seiner Aufgabe? Ich muss die nicht lösen :D

    Ich will mal nicht so sein. Du übertriffst meine schlimmen Erwartungen. :rolleyes:

    Du willst jetzt sicher wissen warum ?(

    Du fragst nach einer C++ Lösung, hast aber eine Zeile Java in den ersten Quelltext-Zeilen und viel C :!:

    Quellcode

    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. #include <string.h>

    Das sind C-Header und keine C++ Header :!:


    Folgendes ist C++ mit etwas Java:

    Quellcode

    1. class cOsdMenuList {
    2. prti: // java - kannst du schon wegen der Farbe des Quelltextes hier erahnen das es da mit C oder C++ nicht passt. Da sollte dein Editor auch etwas zeigen?
    3. public:
    4. cOsdMenuList(void);
    5. ~cOsdMenuList(void);
    6. static void readList(const char *Path); // Path = menu.conf
    7. void add(const char *Title);
    8. }
    9. extern cOsdMenuList *OsdMenuList;



    Und das ist wieder pur C:

    Quellcode

    1. for(int i=0; i < count(OsdMenuList); i++){
    2. printf("Title: %s\n", OsdMenuList->Title);
    3. }


    Tipps orientieren sich an den Vorleistungen des Betragserstellers.
    Und komplette Lösungen - dafür braucht man einen Ghostwriter.

    Also mal ein wenig mehr Quelltext zeigen.

    gcc klein geschrieben ist der C-Compiler des GCC-Paketes. Wenn das wirklich C++ werden soll, brauchst du den g++ der GCC-Paketes. :D

    Na dann noch viel Spass ;)
    bcc-fan
  • öm jetzt weis ich was du mit java als meinst.

    sollte private heißen ... hötte man sich denken können als "experte".

    schau mal auf meine posts. ich war ein bissche platt als ich es in die schell getippt habe. gcc -v naja ging halt schieft, hab den falschen compiler genommen.

    es ist kein ansatz von lösung zu sehen nur sprüche klopfen
    mir häte nur ein tipp gereicht. nim vectoren oder was auch immer hier am sinnvollsten ist.

    oder

    ich hätte es mit pointern gelöst hier ein denk anreiz

    Quellcode

    1. ...
    2. ...
    3. ...


    was auch immer.

    c++ ist c++ auf der erde sowie auf dem mond. türlich abhängig von compiler platform und co.
    jedoch ist es wiederum c++ somit im großen und ganzen sind beispiele doch machbar.
    bist du auch im pp forum wo deine antwort zur gleichen frage wäre: benutzt du php4 uder 5 ...

    bevor du deine klugen sprüche getippt hast. höttest du deinen lösungsansatz schreiben können.

    Axo schau mal hier ^^
    forum.chip.de/1013434-post2.html

    forum daum runter wozu eigentlich betreiben?


    egal ich geh jetzt ins bett das wochende war mit sehr viel promille verbunden welches nun abgebaut werdne muss