Salut à tous, c'est encore moi
Question du jour: peut-on mettre des gros objets sur la stack, ou est-ce préférable de les mettre dans le heap ?
Comprenez bien, je parle d'objets d'une vingtaine de Mo
Edit: et en question parallèle, si je devais mettre cet objet dans le scope global... bonne ou mauvaise idée ?
Edit2: puisque c'est là que je veux en venir, autant vous en parler aussi...
Le but de cette opération est de créer des gros blocs de mémoire d'un coup, pour ensuite allouer dedans des espaces mémoire pour des objets.
C'est peut-être une très mauvaise idée, mais ce n'est pas vraiment le point de ma question ici (même si les commentaires sont les bienvenus).
Ce que je cherche mnt, c'est comment forcer la construction d'un objet dans une adresse que je choisis dans mon bloc.
En gros, comment pourrais-je faire pour créer dans la classe MemoryBlock une méthode qui va trouver un espace mémoire dispo dans elle même, et y construire un objet ? Le problème n'est pas de trouver un espace mémoire bien sur, mais bien de créer l'objet où je le décide. J'ai pensé à deux trois trucs, et le premier me semble la plus belle solution à l'usage, mais est-ce possible ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Object* myObj = new(memblock) Object(); Object* myObj = memblock->new<Object>(); Object* myObj = memblock->new(Object); // Je trouve cette dernière particulièrement moche...
Partager