new/delete/cast, fuite de mémoire ou pas ?
Salut,
Une question me trotte dans la tête depuis quelques temps, alors je viens vous demander votre avis.
Premièrement voici un exemple de code:
Code:
1 2 3 4 5 6
| void *ptr = new int[10];
std::cout << "taille en int* " << 10 * sizeof(int) << std::endl;
std::cout << "taille en char* " << 10 * sizeof(char) << std::endl;
delete[] static_cast<char*>(ptr); |
Je me demande alors, est-ce que ce code provoque une fuite de mémoire ?
Sachant que dans mon cas un int est sur 4 octets, et un char est sur un octet.
Je pense que c'est le cas mais je n'en suis pas sûr et c'est bien pour cela que je vous demande votre avis .
Je sais void* c'est mal, mais c'est juste pour illuster le problème .