Zugriff auf Variable in Headerdatei



  • Hi,

    ich möchte width und height in der datei gdc.cpp benutzen, ohne sie in gdc.cpp zu deklarieren, doch das geht nicht(fehlermeldung unten) 😞

    hier habe ich meinen Quelltext:

    // main.h
    #ifndef MAIN_H
    #define MAIN_H
    
    //includes zu bibliotheken und zu meinen headerdateien
    #include "gdc.h"
    
    int width, height;
    
    #endif
    
    // main.cpp
    #include "main.h"
    
    int main()
    {
    
    return 0;
    }
    
    // gdc.h
    // include guards und so
    
    void func();
    
    //..
    
    // gdc.cpp
    #include "main.h"
    
    void func()
    {
    int sum = width * height;
    }
    

    Das heißt, dass ich die Variablen aus der Header "header.h" benutzen möchte.
    Aber wenn ich das machen, sagt der compiler:

    1>gdc.obj : error LNK2005: "int height" (?height@@3HA) ist bereits in main.obj definiert.
    1>gdc.obj : error LNK2005: "int width" (?width@@3HA) ist bereits in main.obj definiert.
    1>gdc.obj : error LNK2005: "int height" (?height@@3HA) ist bereits in main.obj definiert.
    1>gdc.obj : error LNK2005: "int width" (?width@@3HA) ist bereits in main.obj definiert.
    1>C:\Users\Administrator\Desktop\xyz\programm\Debug\programm.exe : fatal error LNK1169: Mindestens ein mehrfach definiertes Symbol gefunden.
    

    Ich hoffe,dass ihr mich versteht 😉

    Mfg
    Mozart ^^



  • Hallo

    Informier dich über das Schlusselwort extern.

    bis bald
    akari



  • danke 😉



  • Und warum globale Variablen baa sind.


Anmelden zum Antworten