personnellement, je trouve que la 2 est plus explicite, car après tout new est une fonction, donc elle prend des arguments.
d'ailleurs, on voit que l'argument est int. or, dans la fonction new que j'ai envoyée:
static void * operator new(size_t size);
l'argument est un nombre.
J'ai testé avec int, comme avec d'autres types de données. Il y a donc une conversion implicite qui se passe. Si on envoie int, size_t sera égale à 4,
si on envoie une classe comprenant 2 int, size_t vaudra 8....
mais je voudrais savoir comment se passe la conversion implicite. Je veux dire par là: comment le compilateur fait il pour connaitre la taille?
Partager