I cant. They have to be in the same array.
Just make each team manage a collection of base car pointers and use virtual functions to total the time, move, draw, etc.
There will never be a mix between then and never more then two car types. The project is done, adding up scores at the end is the only part that is left
What if each team has both raceCars and crapCars? Or raceCars, crapCars, and the newly created superCars and bonzoCars? Your code will become a hive of switch statements and type interrogation. Blech.