Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    [c++]template e static map

    ciao.
    Ho una mappa statica in un template come variabile pubblica.

    codice:
    template <typename B>
    class complex_nillable_type: public B
    {
    static complex_nillable_type::m_pMap = NULL;	
    public:
      complex_nillable_type ()
          : nil_ (false),
            ref_ (xml_schema::idref (""), 0, this)
      {
    	 
      }
    ho 200 tipi che fanno riferimento a quel template , e vorrei condividere per tutti i tipi una mappa statica , in modo da leggerla dall ' esterno.
    il problema è che mi da questi errori:
    c:\IFCXML\ifc\ifc\nillable-type.hxx(20): error C2864: 'm_pMap' : only const static integral data members can be initialized inside a class or struct
    c:\IFCXML\ifc\ifc\IFC2X3.hxx(4202) : see reference to class template instantiation 'complex_nillable_type[B]' being compiled
    with
    [
    B=ifc::IfcFlowControllerTypeBase
    ]
    per ognuno dei tipi.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    un alternativa che vorrei provare sarebbe quella di creare una classe con una mappa public static in cui andare a settare e fare il lookup da qualsiasi punto del codice , forse pero' allora è meglio un singleton senza particolari pretese dato che non sono in ambito multithreading.
    o un semplice namespace?
    secondo voi?
    e un dubbio :
    se la mappa è in una classe normale posso accedere ai suoi membri public static o devo creare una classe statica?

    grazie.

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.