Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di Kreator
    Registrato dal
    May 2002
    Messaggi
    278

    [C++] problema di allocazione memoria

    Ciao raga.

    Ho un problema quando faccio la new su un puntatore a una struttura che e' stato dichiarato in un modulo diverso da dove lo vado a definire.
    Per essere più chiari vi mostro un esempio.

    modulo: Main.h
    codice:
    class TForm1 : public TForm
    {
    __published:
       ...
    
    private:
       ...
    
    public:
       ...
       struct TemplateRecordUsers
       {
         char UserName[USERNAME_LENGHT];
         char IP[IP_LENGHT];
         int Door;
       };
       TemplateRecordUsers *recordUsers[MAX_USERS];
    
    };
    modulo: RequestUsersThread.cpp

    codice:
    #include "Main.h"
    
    __fastcall THRequestUsers::THRequestUsers(bool CreateSuspended, TComponent *Owner)
            : TThread(CreateSuspended)
    {
       Base_form = reinterpret_cast <TForm1 *> (Parente);
    }
    
    void __fastcall THRequestUsers::Execute()
    {
       ...
       Base_form->recordUsers[indice] = new TemplateRecordUsers;
       ...
    }
    Sostanzialmente in quest'ultimo modulo mi da errore sulla new e mi dice:
    [C++ Error] RequestUsersThread.cpp(136): E2303 Type name expected

    Qualcuno mi puo' aiutare ???
    Grazie.


  2. #2
    Utente di HTML.it L'avatar di Kreator
    Registrato dal
    May 2002
    Messaggi
    278
    ok, raga ho risolto.
    Ho semplicemente spostato la dichiarazione della struttura fuori dalla definizione di classe.
    Ora funziona.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.