You seem to be confused about what you really want - I try to give you an explanation, and maybe you can then decide if this was what you intended.: James A Beggs wrote: TCSpinEdit ** SpinnerArray; SpinnerArray = new TCSpinEdit *[58]; for (int iCtr = 0; iCtr < 58; iCtr++) So you have a pointer to an array of 58 TCSpinEdit*s. In your for-loop you need to initialize each of the TCSpinEdit* 0 to 57 with a pointer to a TCSpinEdit:
for (int iCtr = 0; iCtr < 58; iCtr++)
{
SpinnerArray[iCtr]= new TCSpinEdit( parameter );
{
Your TCSpinners are now accessed as SpinnerArray[i], where i=0..57. If you need - for whatever reason - a association between your TCSpinners and some other data, e.g. a string, you might use a std::map < string, int > to store pairs of strings and indices into your SpinnerArray.
My opinions may have changed, but not the fact that I am right.