Sudoku KLassen Wirrwar



  • ich habe nichts dagegen auch das Spielfeld in OOP zu schreiben. k aber dann müsste ich ja ein klassen array schreiben oder nicht?



  • Souleater schrieb:

    ich habe nichts dagegen auch das Spielfeld in OOP zu schreiben.

    Du musst dich entscheiden. Aber wo liegt denn nun dein Problem? Was genau kannst du nicht in eine Klasse umsetzen?

    Souleater schrieb:

    k aber dann müsste ich ja ein klassen array schreiben oder nicht?

    Was verstehst du unter einem Klassen-Array? Wahrscheinlich eine Klasse, die ein Array besitzt, oder (ein Array aus Objekten würde hier nicht sehr viel Sinn machen)?



  • Souleater schrieb:

    k aber dann müsste ich ja ein klassen array schreiben oder nicht?

    Was verstehst du unter einem Klassen-Array? Wahrscheinlich eine Klasse, die ein Array besitzt, oder (ein Array aus Objekten würde hier nicht sehr viel Sinn machen)?[/quote]

    jop ersteres!! das kriege ich denke ich mal auch hin! und mein Problem liegt darin das ich nicht weiß wie man eine klasse dekleriert die für mich obene genanntes tun soll!!



  • Und du hast dich wirklich mit Klassen beschäftigt?

    class SudokuFeld
    {
        public:
            // deine Schnittstelle
    
        private:
            int Feld[9][9]; // besser std::tr1::array
            // deine restlichen privaten Member
    };
    

    Ich sehe dein Problem nicht. Falls dich das nicht zufriedenstellt, solltest du dich genauer ausdrücken. Du redest bis jetzt immer nur davon, dass du nicht weisst, wie du eine solche Klasse schreibst. Und das ist nicht wirklich eine gute Problembeschreibung.


  • Administrator

    @Nexus,
    Nein, er schreibt, er wüsste nicht, wie er eine Klasse schreibt, wisse aber, was eine Klasse ist. Das ist in meinen Augen aber ein völliger Widerspruch.

    @Souleater,
    Lies am besten nochmals deine C++ Bücher und Tutorials durch und mach die Übungen darin. Programmiere die Beispiele und teste ein wenig aus. Denn wie mir bisher scheint, hast du nicht viel Begriffen, was dir in deinen Bücher und Tutorials vermittelt wurde. Vielleicht solltest du dir auch bessere Bücher und Tutorials zulegen. Als Bücher werden vor allem die zwei (drei) empfohlen:
    - C++ Primer
    - Thinking in C++ 1&2

    Grüssli



  • Dravere schrieb:

    @Nexus,
    Nein, er schreibt, er wüsste nicht, wie er eine Klasse schreibt, wisse aber, was eine Klasse ist. Das ist in meinen Augen aber ein völliger Widerspruch.

    Warum? - Eine Klasse ist ein abstraktes Modell. Man kann die auch verstehen, ohne zu wissen, wie man eine programmiert. Klar, üblicherweise ist das immer sehr ähnlich, aber die genaue Syntax ist von Sprache zu Sprache (zumindest leicht) verschieden..


  • Administrator

    drakon schrieb:

    Dravere schrieb:

    @Nexus,
    Nein, er schreibt, er wüsste nicht, wie er eine Klasse schreibt, wisse aber, was eine Klasse ist. Das ist in meinen Augen aber ein völliger Widerspruch.

    Warum? - Eine Klasse ist ein abstraktes Modell. Man kann die auch verstehen, ohne zu wissen, wie man eine programmiert. Klar, üblicherweise ist das immer sehr ähnlich, aber die genaue Syntax ist von Sprache zu Sprache (zumindest leicht) verschieden..

    Er hat gesagt, dass er ein C++ Buch gelesen hat und mehrere C++ Tutorials gemacht hat. Da wird wohl irgendwo gestanden haben, wie man eine Klasse schreibt, also wie die Syntax aussieht. Sonst ist das aber mehr als nur ein Schrott Buch, bzw. Schrott Tutorials.

    Grüssli



  • jetz hab ich mal ne frage

    // besser std::tr1::array

    was ist das denn?

    std::tr1 ?? noch nie davon gehört/gelesen

    wikipedia sagt dazu einfach nur container fester größe...
    wo ist denn der unterschied zu int feld[9][9]?



  • So erstmal danke an Nexus das hilft mir schon weiter.So wie es scheint habe ich mich noch nciht klar genug ausgedrückt ich weiß was klassen sind und kann auch welche schreiben ABER halt nicht diese speziellen, und noch ne Frage an Nexus was meinst du mit schnittstellen?? die stellen wo die klasse schaun sol ob jetzt die Zahlen 1-9 vorhanden sind oder was? sry bin nicht grade der schnelste





  • Also habe mir so einige von den tutos angekuckt die du mir da gezeigt hast allerdings steht da auch in keinem drin was mir helfen könnte ! ich versuche es nochmal zu erklären da es ja bisher missverstanden worden ist worin mein Problem liegt. Also ich weiß was klassen sind kann diese auch im Normalfall Deklarieren nur nicht in diesem fall weil ich nicht weiß wie man eine klasse erstellen soll die (halt in diesem fall) ein 2DM 9x9 Array checkt einmal vertikal einmal horizontal und dann noch jeweils alle, in dem Feld enthaltenen, 3x3 Felder.( also das alles soll nicht eine klasse können sondern ruhig 3)Und checken sollen diese KLassen erstens ob jeweils alle Zahlen von 1-9 EINMAL enthalten sind falss nicht dies koriegen!

    Hoffe mein Problem ist jetzt etwas verständlicher



  • Souleater schrieb:

    Hoffe mein Problem ist jetzt etwas verständlicher

    Ein wenig, aber das scheint mir der falsche Ansatz zu sein. Besonders "es können auch 3 Klassen sein". Du bringst da Klassen und Funktionen etwas durcheinander. Klassen repräsentieren ein Objekt, das einen gewissen Status annehmen kann. Ein Objekt existiert sozusagen. Funktionen hingegen führen eine gewisse Aufgabe/Prozedur/Anweisung durch. Sie tun etwas in Abhängigkeit von den übergebenen Argumenten.

    Wie eine Klasse mit einem Array aussieht, habe ich ja gezeigt. std::tr1::array ist eine Klasse, die die Funktionalität eines Arrays hat. Nur komfortabler, sicherer und weniger fehleranfällig.



  • AHH ja das kann sein, mmh gut dann beschäftige ich mich nochmal ausführlich mit Funktionen! Thx


Anmelden zum Antworten