Die meistgestellten Fragen



  • es geht hier um c++,gell?

    Vergiss es. Solange du die Grundlagen nicht kannst (und zu den Grundlagen gehört mehr als schon mal ne Klasse erstellt zu haben!), hat es keinen Sinn, sich mit Oberflächen zu beschäftigen.



  • Tuxinator schrieb:

    es geht hier um c++,gell?

    Vergiss es. Solange du die Grundlagen nicht kannst (und zu den Grundlagen gehört mehr als schon mal ne Klasse erstellt zu haben!), hat es keinen Sinn, sich mit Oberflächen zu beschäftigen.

    Ja genau, und deshalb sind Klassen fundamental, also überdenke deinen Beitrag besser nochmal.



  • Tuxinator schrieb:

    es geht hier um c++,gell?

    Vergiss es. Solange du die Grundlagen nicht kannst (und zu den Grundlagen gehört mehr als schon mal ne Klasse erstellt zu haben!), hat es keinen Sinn, sich mit Oberflächen zu beschäftigen.

    Jap.

    Ich guck mal, was ich noch hinzufüge/entferne. Mein Ziel ist es nämlich nicht, eine große Sammlung zu erstellen, in dem möglichst viele häufig gestellte Fragen beantwortet werden (dafür sind schließlich die FAQ da), sondern einen kleinen Text zu schreiben, der wenn möglich nur das Wichtigste enthält.

    Alle Änderungen nehm ich im OP vor.



  • IMHO solltest du, wenn du das schon machst, vllt. die Top 10 der meistgestellten Fragen rausfinden und in einem Post mit den entsprechenden Einträgen der FAQ verlinken, also:

    1. Warum verschwindet mein Konsolenfenster sofort?
      ...


  • .filmor schrieb:

    Die drei Zeilen werden in dem Artikel aber sinnvoll in eine Funktion gepackt, die dann sehr leicht verständlich ist.

    Was wenn der Anfänger noch nicht (eigene) Funktionen gehabt hat? Ich seh hier meistens nur Leute die cin.get() und system("PAUSE") benutzen, und das wahrscheinlich auch deswegen, weil ihnen der Code aus der FAQ nicht ganz klar wird. Die Funktion wait() muss ja noch in der main-Funktion aufgerufen werden (und zwar vor return, wer noch keine Funktionen hat, weiß das vielleicht auch nicht).
    Auch finde ich es total lästig, immer ein wait() an allen meinen programm-abbrüchen einzufügen. Und bei einem assert oder /0 bringst ja dann sowieso nichts mehr.
    Deswegen: Was spricht denn dagegen? Man könnte diese IDE-Tipps ja nur als Empfehlung hinschreiben und nichts als zwingende Aufforderung.

    mfg.



  • Zu Punkt 6: IMHO müsste es heissen "Die Standardbibliothek arbeitet mit const char*", jedenfalls in dem Zusammenhang.



  • Hallo

    Michael E. schrieb:

    void main()
    // ersetzen durch:
    int main()
    
    #include <iostream.h>
    // ersetzen durch:
    #include <iostream>
    using namespace std;	// analog dazu: <string.h> -> <string>
    
    #include <stdio.h>
    // ersetzen durch:
    #include <cstdio>
    using namespace std;	// analog dazu: assert.h, ctype.h, locale.h, time.h, math.h und weitere
    

    <string.h> wird doch aber nicht zu <string>, sondern zu <cstring>.

    chrische



  • Hm, ich würd's sinnvoller finden (wegen redundanz u. übersichtlichkeit), wen man im C++-Froum soetwas wie einen "Indexthread" zum FAQ sticky macht in welchem man für bestimmte Probleme auf den/die passende(n) FAQ Threads verweist. Dann würde man sich nämlich die Posts sparen, in denen wieder 'mal jemand meint, er habe in der FAQ gesucht und gesucht und doch nix gefunden (obwohl der Rest der Welt weiß, daß dort steht was er sucht).

    Greetz, Swordfish

    @chrische: mein ich auch!!


  • Mod

    Swordfish schrieb:

    Hm, ich würd's sinnvoller finden (wegen redundanz u. übersichtlichkeit), wen man im C++-Froum soetwas wie einen "Indexthread" zum FAQ sticky macht in welchem man für bestimmte Probleme auf den/die passende(n) FAQ Threads verweist. Dann würde man sich nämlich die Posts sparen, in denen wieder 'mal jemand meint, er habe in der FAQ gesucht und gesucht und doch nix gefunden (obwohl der Rest der Welt weiß, daß dort steht was er sucht).

    Greetz, Swordfish

    @chrische: mein ich auch!!

    stiime zu. man kann ja abwägen: wenn die frage in einer zeile zu beantworten ist, kann man sie hier beantworten, sonst nimmt man einen link.



  • Hab noch ne Idee bzgl. des eigentlichen Themas, dieses Threads:

    8. C nicht mit C++ vermischen:

    Beispiel a) Casts:

    fstream fStr("C:\\demo.dat");
    // ...
    unsigned long ulNummer;
    fStr.read(reinterpret_cast<char*>(&ulNummer), sizeof(unsigned long)); // C++
    // und nicht:
    // fStr.read((char*)&ulNummer), sizeof(unsigned long)); // C
    // ...
    

    Beispiel b) File Handling:

    // Filestreams statt FILE-Structs
    fstream fStr(...); // C++
    // und nicht:
    // FILE *pFile; // C
    

    Beispiel c) Speicherreservierung:

    // new statt malloc und Kohorten
    Typ* tName= new Typ[Anzahl]; // C++
    // und nicht:
    // Typ* tName = (Typ*)malloc(Anzahl * sizeof(Typ)); // C
    

    oder findet ihrs nit so wichtig...? -> Feedback please 😉

    Edit: @camper, gute Idee! 👍 ...bzgl. der Ptr is mir nur nix anderes eingefallen 🙄


  • Mod

    CodeFinder schrieb:

    Hab noch ne Idee bzgl. des eigentlichen Themas, dieses Threads:

    8. C nicht mit C++ vermischen:

    Beispiel a) Casts:

    int i;
    long l = 2344234;
    i = static_cast<int>(l); // C++
    // und nicht:
    // i = (int)l; // C
    

    Beispiel b) File Handling:

    // Filestreams statt FILE-Structs
    fstream fStr(...); // C++
    // und nicht:
    // FILE *pFile; // C
    

    oder findet ihrs nit so wichtig...? -> Feedback please 😉

    gute idee. dann darf auch malloc(und konsorten)->new nicht fehlen.

    edit: bei den C-casts besser ein weniger kontroverses beispiel (also irgendwas was leicht ins auge geht, am besten mit pointern) wählen.



  • Jo!, done! 😉


  • Mod

    jo, ist ok. da kannst du bei dem beispiel ja gleich punkt a) und b) zusammenführen 🙂 oder gleich alle 3 😃

    edit: übrigens:

    Typ* tName = (Typ*)malloc(Anzahl[b]*sizeof(Typ)[/b]);
    

    was gleich als eine begründung herhalten kann :p



  • camper schrieb:

    edit: übrigens:

    Typ* tName = (Typ*)malloc(Anzahl[b]*sizeof(Typ)[/b]);
    

    was gleich als eine begründung herhalten kann :p

    Hähä^^, jo stimmt 🤡


  • Mod

    frage an die moderatoren: besteht eine chance, diesen tread sticky zu machen, oder soller in der versenkung verschwinden?



  • Ich bin dafür, dass noch en bisschen gesammelt/überarbeitet wird und schließlich alles in einem Post zusammengefasst wird.



  • camper schrieb:

    frage an die moderatoren: besteht eine chance, diesen tread sticky zu machen, oder soller in der versenkung verschwinden?

    Imo wird er so oder so in der Versenkung verschwinden. Entweder im wörtlichen Sinne, oder er wird, so wie die FAQs, schlicht ignoriert.

    Aber versuchen wir es...

    Ich bin dafür, dass noch en bisschen gesammelt/überarbeitet wird und schließlich alles in einem Post zusammengefasst wird.

    Ich pinne den Thread jetzt erstmal fest, dass macht das Sammeln leichter. Eine spätere Zusammenfassung scheint mir aber ebenfalls sinnvoll zu sein.


  • Mod

    HumeSikkins schrieb:

    camper schrieb:

    frage an die moderatoren: besteht eine chance, diesen tread sticky zu machen, oder soller in der versenkung verschwinden?

    Imo wird er so oder so in der Versenkung verschwinden. Entweder im wörtlichen Sinne, oder er wird, so wie die FAQs, schlicht ignoriert.

    das bestimmt. aber ein sticky ist leichter wiederzufinden, wenn man einen link posten will, weil mal wieder ignoriert wurde 🙂
    ob hier irgendwann ein neuere thread gebraucht wird ist nicht so klar. ein einfaches updaten des originalen beitrags sollte doch genügen. die thematik selbst ist ja auch nicht in sich abgeschlossen.



  • Was haltet ihr von der jetzigen Version?

    BTW: Zahl-String-Konvertierungen will ich nicht reinnehmen, weil mir das in letzter Zeit nicht aufgefallen ist und der Text jetzt schon groß genug ist.



  • Mir fehlt immer noch der Hinweis, dass using namespace im Header böse ist. Den "void main" Teil könntest du noch mit dem einfachen "main" erweitern, das kommt auch häufiger vor.

    Michael E. schrieb:

    Zahl-String-Konvertierungen will ich nicht reinnehmen, weil mir das in letzter Zeit nicht aufgefallen ist und der Text jetzt schon groß genug ist.

    Es reicht ein Link auf den FAQ-Beitrag. Das kommt immernoch viel zu häufig vor. Du könntest das unter Punkt 10 setzen, atoi wird auch viel zu häufig verwendet (ist ja afaik nicht mal C).

    Bei Punkt 9 fehlt der [b]-Tag am Anfang


Anmelden zum Antworten