You aren't so much wrong as misunderstanding.
The constuctor will be called once
Given the vector constructor :
cellArray(4, Cell(x) )
then the Cell(x) constructor will be called once to create a cell object.
then the Cell copy constructor will be called 4 times to copy construct the vector elements from the Cell object created above.
Oh, OK...of course. I just finished tracking down a few bugs in my constructors, so this wasn't a total loss at all.
Thanks for the help, Gulkan.