STL Vector und strukturen



  • m_mesh[m_dwMeshNum].state.push_back(????);
    

    state ist eine Struktur:

    typedef struct _RENDERSTATE
    {
        DWORD   dwRenderStateType;
        DWORD   dwRenderState;
    }RENDERSTATE;
    

    m_mesh ist auch eine Struktur:

    typedef struct _MESH
    {
        DWORD       dwNum;
        DWORD       dwType;
        D3DMATRIX   matView;
        vector<RENDERSTATE> state;
    }MESH;
    


  • was willst du denn genau machen? formulier die frage mal etwas genauer das ist irgendwie zu abstrakt der post (jedenfalls mir).
    also wenn es dir darum geht den vector um ein element zu verlängern dann geht das so:

    m_mesh[m_dwMeshNum].state.push_back(RENDERSTATE());
    


  • reicht schon 🙂 thx

    PS: In der Eile hab ich vergessen die Frage hinzuschreiben. Ich hatte Essen auf dem Herd 😃 Sorry 🙄

    [ Dieser Beitrag wurde am 05.04.2003 um 23:11 Uhr von Netzwerk-Latenz editiert. ]



  • Sorry, offtopic aber vielleicht trotzdem interessant für Dich.

    Original erstellt von Netzwerk-Latenz:
    **```cpp
    typedef struct _RENDERSTATE
    {
    DWORD dwRenderStateType;
    DWORD dwRenderState;
    }RENDERSTATE;

    Sowas ist ziemlich unnötig, Du brauchst keinen Typ definieren (naja, halt nicht explizit), das tut C++ schon ganz alleine:

    struct RENDERSTATE
    {
        DWORD   dwRenderStateType;
        DWORD   dwRenderState;
    };
    

    Und in C hätte meines Wissens auch schon folgendes gereicht:

    typedef struct
    {
        DWORD   dwRenderStateType;
        DWORD   dwRenderState;
    } RENDERSTATE;
    

    [ Dieser Beitrag wurde am 06.04.2003 um 01:48 Uhr von nman editiert. ]



  • ich weiss. das ist aber eine unsitte von mir 🙄 ich kann einfach nicht anders. das typedef struct kommt automatisch. Lieg wohl daran das ich vor 1000 Jahren mit TurboC2.0 angefangen habe C zu lernen 😃 Und seit dem bin ich für C++ versaut. 😃


Anmelden zum Antworten