Ich verstehe ein Stück C++ Code nicht, bitte um Hilfe.



  • Hallo liebe Forummitglieder,

    ich versuche mich in fremdes Code einzuarbeiten, habe auch nicht allzuviel Erfahrung mit C++. Verstehe ich richtig den code: Wir definieren ein neues Typ INDATA_TYPE und anschließend erzeugen ein Vektor mit je 2 INDATA_TYP Elementen und eins vom Typ double. Die letzen zwei Zeilen verstehe ich nicht. Ist es ein Konstruktor?

    Für eure Hilfe bin ich euch sehr dankbar.

    typedef struct {
      float t,y;
    } INDATA_TYPE;
    
    vector<INDATA_TYPE> data;
    vector<double> lib;
    typedef vector<INDATA_TYPE>::const_iterator CI_dt;
    typedef vector<INDATA_TYPE>::iterator       MI_dt;
    


  • Nein das ist kein Ctor, das sind typedefs.



  • //das hier ist C:
    typedef struct {
      float t,y;
    } INDATA_TYPE;
    
    //so macht man das in C++:
    struct INDATA_TYPE{
      float t,y;
    };
    
    //das hier sind die beiden vectoren (arrays):
    vector<INDATA_TYPE> data;
    vector<double> lib;
    
    //und hier werden typen definiert (typedef FROM TO;)
    typedef vector<INDATA_TYPE>::const_iterator CI_dt;
    typedef vector<INDATA_TYPE>::iterator       MI_dt;
    

    zu iteratoren googelst du am besten mal, weil es ein sehr umfangreiches konzept ist, was sich durch ganz C++ zieht - und ich kanns auch nicht in 3 sätzen zusammenfassen ^^

    bb


Anmelden zum Antworten