bonjour,

Dans le cadre de la réalisation d'un gestionnaire de mémoire, j'ai besoin de créer une macro qui se comporte de la même manière qu'un new, mais sans l'utiliser.
Je n'ai pas le droit d'utiliser le new, car faisant du middleware, il faut laisser au cilient la possibilité de faire sa propre surcharge de new qui potentiellement pourrait utiliser un autre allocateur que celui que j'utilise en interne.

Donc je voudrais un truc du genre
MyClass* ptr = MY_NEW MyClass(param1, param2);
dans l'idéal
ou peut être de manière plus réaliste
MyClass* ptr = MY_NEW(MyClass, param1, param2);


Est-ce possible?

Est-ce que:
MyClass* ptr = (MyClass*)malloc(sizeof(MyClass));
ptr->MyClass(param1, param2);
et
MyClass* ptr = new MyClass(param1, param2);
sont équivalents?


Merci d'avance pour vos réponses