Vorrei poter registrare le mie classi all'interno di un std::map
o un vettore, non pensare ai duplicati e ad esempio per ora, ma non voglio registrarlo all'interno del chiamata del costruttore di classe o qualsiasi funzione interna alla classe, in qualche modo lo fanno al di fuori della classe, quindi, anche se non lo istanziamo mai, sarei in grado di sapere che esiste.In qualche modo registrare le mie classi in un elenco
Esempio:
// Somehow, from outside the myclass, in a scope that will be called
//in the begining of the proccess, add "MyClass1" to a
//list so it can be instanciated later
class MyClass1{
}
Poi vorrei fare una #define
di esso o se in grado, un modello.
Non so se mi sono chiarito (di nuovo) ... Il mio punto è che ho bisogno di conoscere ogni classe che ho senza dover chiamare tutti e ciascuno di loro.
La mia idea era quella di creare un #define
per rendere più facile per dichiarare l'intestazione della classe e chiamare qualcosa che registro che specifica classe a un elenco
Questo può essere fatto o dovrò mappare manualmente?
// desirable:
#define CLASSREGISTER(myclass) makethemagic(##myclass); class myclass {
};
so, con che definiscono non ho potuto utilizzare l'ereditarietà ecc ... Il mio punto è stato quello di cercare di dare un esempio di quello che stavo pensando di creare in qualche modo ...
Penso che dovresti aggiungere il tag "design-pattern". – Alexandru