Einige Anfängerfragen



  • Hallo, ich möchte gerne C++ lernen, habe aber schon einige Erfahrungen mit php u. Konsorten sowie Delphi, und gehe das Problem mit der Trialversion von Visual Studio Prof. an.
    Ich habe mir auch ein Buch gekauft, dass, na ja sagen wir, nicht gerade das Gelbe vom Ei ist. Es sind aber jede Menge Bsp. auf der CD dabei, allerdings mit dem Nachteil, dass die Bsp. in einer Vorgängerversion programmiert sind. Ich mache es aber so, dass ich ein neues Projekt in VS erstelle und mir dann die Fkt. etc. Schritt für Schritt rüber kopiere und dann versuche den Code zu debuggen. Habe jetzt schon einiges gelernt (Nachteil wird zum Vorteil). Ich habe auch beschlossen, dass ich gleich mit verwaltetem Code anfange, da ja bei VS alles darauf ausgerichtet ist. Jetzt zu meinen Fragen:

    1. In den Buchbeispielen sind alle Funktionen (auch die selbst definierten) mit Code in Form1.h geschrieben, funtioniert zwar, aber ich habe gedacht/gelesen, dass bei sauberer C++ Programmierung in den Headerdateien nur die Definitionen stehen und der Code in z.B. Form1.cpp realisiert werden soll. Mir ist es aber bis jetzt nicht gelungen z.B. das Click-Erignis in der cpp-Datei zu realisieren. Bei der Erstellung einer Klasse und der Ableitung einer Klasse ist mir die Trennung von Headerdateien und cpp-Datei sauber (hoffe ich) gelungen aber bei den Ereignisfunktionen ist mir das noch nicht so richtig klar.

    2. Weiss jemand, wie man den SQL-Server aktiviert. Da gibt es im Forum sicher schon Bsp. habe aber nichts gefunden. Eine Verbindung mit MySQL über ODBC ist mir schon gelungen.

    3. Eher nebensächlich: Ich habe im Editor die Tabeinstellungen auf "Block, Einzug=1, Tabstopps=2 u. Tabstops beibehalten" eingestellt (meine bisherige Arbeitsweise in anderen Editoren), wenn ich aber auf Tab drücke wird nur immer um 1 Zeichen weiter gesprungen. Ist das ein Bug oder gibt es einen Trick.

    Vielen Dank im Voraus und ich hoffe Ihr verzeiht mir die lange Einleitung, sowie die vielleicht nicht ganz professionelle Ausdrucksweise.
    Gruss Walter



  • Ich habe auch beschlossen, dass ich gleich mit verwaltetem Code anfange, da ja bei VS alles darauf ausgerichtet ist. Jetzt zu meinen Fragen:

    Das ist schon mal eine Schlechte Idee, fehlende Grundlagen werden Dir das .Net Framework unnötig erschweren.

    Wo genau ist Dein Problem mit dem "Event" in eine .cpp Datei zu packen ? Es ist einfach nur eine Methode deren Deklaration und Definition Du trennst. (Fehlt jetzt nicht an den Grundlagen C++ ? 😃 )

    Was meinst Du mit "Weiss jemand, wie man den SQL-Server aktiviert" ? (Ok, ich hab bisher nur OleDB gemacht , aber aktivieren hört sich irgendwie... Naja, Fremd für mich an).

    Und naja.... Man könnte die Tabweite auf 4 Zeichen einstellen , dann sprint das auch um 4 Zeichen ^^

    Und noch nen Tip:
    Ein Problem, ein Thread



  • Knuddelbaer, natürlich fehlen mir noch Grundlagen. Ich habe ja geschrieben, dass ich C++ lernen will und wie ich das angehe, lass mich mal.
    Zu 1. ich habe es jetzt zu 99% gecheckt. Hatte wohl ein paar Knoten in meinen oberen Windungen. Trotzdem bleibt noch die Frage was ist der richtige/bessere Stil.
    Zu 2. Werde das noch mal untersuchen. Ich konnte mit MySQL über ODBC sofort eine Verbindung herstellen, während es mir mit dem SQL-Server bis jetzt noch nicht gelungen ist. Wenn ich nicht weiterkomme, werde ich, mit besseren Infos von mir, in einem neuen Thread (so wie du es empfohlen hast) noch mal fragen.
    Danke und Gruss



  • Wir hatten das so oft hier, das Leute meinen gleich mit C++/CLI anfangen zu müssen und sind allsamt auf die Nase gefallen. Es war ein Tipp, diesen anzunehmen ist Deine Sache. Sei aber vorbereitet das es dann immer verweise in die Grundlagen gibt.

    Die Antwort auf "was ist besser" lässt sich so pauschal nicht sagen da viele Punkte zu berücksichtigen sind wann man was wo platziert. u.A. (!) sind dort Abhängigkeiten zwischen den einzelnen Units , inline sowie tempaltes zu berücksichtigen. Grundlegen lässt sich sagen, das man mit einer Aufteilung weniger Probleme haben wird, manchmal wird aber gerade die Aufteilung zum Problem. Einiges kann man sich beim erlernen herbeileiten, anderes ist einfach Erfahrung (wenn man fertig ist mit einem Programm würde man es am liebsten neu schreiben weil man viel dazu gelernt hat).

    Du bekommst bei einem Fehler einer Verbindung vom Debugger viele Informationen geliefert. Mit einem "geht nicht" kann hier keiner was anfangen. try und catch kennst Du ja sicherlich aus den Grundlagen, fang die Exception ab bzw stell den Debugger so ein, das dieser bei einer Exception stehen bleibt (STRG + ALT + E) .
    Ersteres liefert den Vorteil, das Du die Exception besser ansehen kannst, aber das wiederum nur wenn Du den richtigen Typ fängst.



  • Knuddelbaer, ich habe das schon als Tipp verstanden. Warum ich gleich mit C++/Cli anfange hat den Grund, dass man ja von der IDE von Haus aus Funktionen etc. geliefert bekommt. Man bekommt dann meiner Meinung nach ein Gefühl dafür was es gibt, wie ist das aufgebaut usw. ausserdem kann ich das dann mit meinen Erfahrungen in Delphi vergleichen. Z.B. ist in dem Buch ein Bsp. mit einem Array für 'DirectoryInfo' was beim Kompilieren Fehler verursachte. Jetzt habe ich also schon gelernt wie man das richtig in der neuen Vers. macht. Es gibt auch die Methode 'Back to the roots' 😉
    Gruss bis zum nächsten Mal.


Anmelden zum Antworten