C ++ enumerations extend their values to the surrounding area - so in this case you can simply say
FerrariCar(int horsePower) : Car(horsePower, Ferrari) { }
C ++ 0x contains new enum classes that behave like Java enums, so you can write:
enum class CarBrand {
Volkswagen,
Ferrari,
Bugatti
};
and then use values like CarBrand::Ferrari.