Bonjour tout le monde !
J'essaie de remplacer un new[] dans mon programme par un VirtaulAlloc(), mais ça ne fonctionne pas.
Je m'explique !
Le new[] de départ :
buffer = new short[size];
J'essaie de faire ceci :
buffer=(short *)VirtualAlloc(0,size,MEM_COMMIT|MEM_RESERVE, PAGE_READWRITE)
L'allocation se passe bien, mais quand j'essaie d'écrire :
J'ai une exception, qui me dit que je n'ai pas le droit d'écrire...
Je pense que c'est lié au fait que size est spécifié en byte, et que donc il faudrait ajouter un sizeof(short), mais ça me fait la même chose (à une adresse deux fois plus grande !)...
Qu'est-ce que j'ai oublié ?
Merci d'avance !
Partager