Struktur in einem Array



  • Tagchen,

    Ich habe diesen netten Code hier 🙂

    //Test.hpp
    struct sStruct
    {
    	std::string	pattern;
    	std::string     mask;
    	DWORD		start;
    	DWORD		end;
    };
    
    //Test.cpp
    static const sStruct structTable[] =
    {
      { "Pattern1"
       , "Mask1"
       , 0x10000
       , 0x50},
    
      { "Pattern2"
       , "Mask2"
       , 0x10000
       , 0x50}
    };
    
    void Test()
    {
      for(int i = 0; i < sizeof(structTable) / sizeof(structTable[0]); ++i)
      {
        std::cout << structTable[i].start << "|" << structTable[i].end << std::endl;
      }
    }
    

    Leider wird bei Beidem 0 ausgegeben, hab ich eventuell irgendwas übersehen 😮 ?



  • Ich sehe keinen Fehler. Der steckt wohl in dem Code, den du nicht zeigst.



  • Mir ist gerade was aufgefallen.
    Wenn ich das ganze lokal mache, funktionierts auch ;O
    Jetzt frag ich mich, wieso?

    //Test.hpp
    struct sStruct
    {
        std::string pattern;
        std::string     mask;
        DWORD       start;
        DWORD       end;
    };
    
    //Test.cpp 
    void Test()
    {
     static const sStruct structTable[] =
     {
      { "Pattern1"
       , "Mask1"
       , 0x10000
       , 0x50},
    
      { "Pattern2"
       , "Mask2"
       , 0x10000
       , 0x50}
     };
    
      for(int i = 0; i < sizeof(structTable) / sizeof(structTable[0]); ++i)
      {
        std::cout << structTable[i].start << "|" << structTable[i].end << std::endl;
      }
    }
    

  • Mod

    Manni66 schrieb:

    Ich sehe keinen Fehler. Der steckt wohl in dem Code, den du nicht zeigst.

    Ich habe einen Verdacht, aber keine Lust zu spekulieren.



  • Ich habe den Verdacht dass campers Verdacht etwas mit dem [suchbarer_fachbegriff] static initialization order fiasco [/suchbarer_fachbegriff] zu tun hat.


Anmelden zum Antworten