C++ ohne C (2)

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von Gackt, 17. November 2005 .

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 17. November 2005
    Hi,
    sorry, dass ich jetzt noch ein Thread erstellen muss. Das andere
    wird einfach nicht geladen. Ich weiß nicht wieso...

    Ich wollte euch fragen, ob man unbedingt C beherschen muss, wenn
    man mit C++ programmiert. Oder geht das auch ohne C ?
    Ich hatte vor mir ein C Buch aus der Bücherei zu besorgen, deswegen
    wollte ich euch erstmal fragen, ob das nötig wäre oder nicht.

    Momentan lerne ich C++. Vor etwa 3-4 Wochen wollte ich ein 2D Spiel
    mit der SDL coden, aber als ich dann gesehen habe, dass man dafür
    C beherschen muss, war ich sehr traurig. Mir wurde gesagt, dass es
    bestimmte wrapper für C++ gibt, mitdem man dann kein C mehr
    braucht, um mit der SDL zu programmieren.
    Wisst ihr, wie man sie benutzen kann ? Was man dafür machen muss ?

    Ich hab noch nie ein wrapper benutzt, deswegen fehlt mir noch das
    Wissen, um es zu benutzen.
    Oder soll ich am besten C lernen und kein wrapper benutzen ?


    Für Tipps und Antworten wäre ich euch sehr dankbar.


    MfG
    Gackt
     

  2. Anzeige
  3. #2 17. November 2005
    Naja, C ist eine Untermenge von C++. Demnach ist C++ vollständig rückwärtskompatibel. Wenn du C++ vollständig kannst, kannst du im Prinzip auch C.

    Ich benutze OpenGL oder Direct3D. SDL habe ich bisher noch nicht verwendet. Aber sowohl OpenGL als auch SDL sind nur API's. Beide sind in C geschrieben, können aber mit vielen anderen Sprachen benutzt werden.

    Ein Wrapper ist nichts anderes als eine Art Layer, eine Softwareschicht welche eine darunterliegende Schicht kapselt. Die MFC sind zum Beispiel ein Wrapper für die große Win32 API.

    Die Syntax der SDL API ist sehr an C angelehnt. Du musst aber nicht C können um mit SDL Spiele zu programmieren. Mit C++ oder auch Java geht das genauso. Wenn du dir die Doku auf der offiziellen SDL Seite anschaust kannst du diesen Staz lesen

    Achja, hier ein Link zu 2D Spiele Tutorials mit C++ und SDL: gamedev.net
     
  4. #3 18. November 2005
    Danke, das hat mir sehr geholfen. Ich hab da aber was entdeckt:

    Code:
    So in conclusion if we would want to init the video and the audio we get:
    
    if( SDL_Init(SDL_INIT_VIDEO|SDL_INIT_AUDIO) <0 )
    {
     printf("Unable to init SDL: %s\n", SDL_GetError());
     return 1;
    }
    
    If an error occured, then the function SDL_GetError() would return a string about the error.
    
    Ein C code... also muss ich dann doch C können?..

    Naja.. trotzdem danke für deine Hilfe :]
     
  5. #4 18. November 2005
    Hi
    du kannst ja auch
    cout <<SDL_GetError();
    machen

    printf() wird durch stdio.h eingebunden
    und ist halt eine C funktion um auf den Konsolenstream zu schreiben.

    also es ist so wenn du C++ kannst wird es dir nicht schwerfallen die C spezifischen Funktionen anzuwenden.
    Gibt halt nur andere Header Dateien


    C ist strukturiert und C++ ist objektorientiert
     

  6. Videos zum Thema
Die Seite wird geladen...