The size of the object must be known at compile time, and it must be constant across all objects. But by using a per-object constant for the size of the embedded array, you'd have objects of different size. That's obviously not possible. JaWiB is right: either make the constant static and thus the same across all instances, or allocate dynamically.

All the buzzt! CornedBee

"There is not now, nor has there ever been, nor will there ever be, any programming language in which it is the least bit difficult to write bad code."
- Flon's Law