Possible Duplicate:
Is there any danger in calling free() or delete instead of delete[]?
I was reading this question:
http://stackoverflow.com/questions/184537/in-what-cases-do-i-use-malloc-vs-new/
Someone raised that one reason to use malloc was if you were going to use free.
I was wondering: Is it valid to mix a free call and a constructor initialization in C++?
i.e.
Can I say:
my_type *ptr = new my_type;
free(my_type);
Is that somehow invalid or worse than:
my_type *ptr = new my_type;
delete my_type;
other than the fact that it's not c++ish?
Likewise, could you do the opposite? Can you say
my_type *ptr = (my_type *)malloc(sizeof(my_type));
delete my_type;
Please merge if this is a duplicate, I searched but didn't see a question along this lines exactly about malloc/delete/new/free asked.