title: Getting size of dynamic C-style array vs. use of delete[]. Contradiction?
body: <p>I read everywhere that in C++ it is not possible to get the size of a dynamic array just from the pointer pointing to that chunk of memory.</p>
  
  <p>How is it possible that there is no way of getting the size of a dynamic array just from the pointer, and at the same time it is possible to free all the memory allocated by using <code>delete []</code> just on the pointer, without the need of specifying the array size?</p>
  
  <p><code>delete []</code> must know the size of the array, right? Therefore this information must exist somewhere. Shouldn't it?</p>
  
  <p>What is wrong in my reasoning?</p>