the idea behind an array is to hold multiple values. in c++ unless you are smart about it they have to be the same value. an enum(eration) is just really an abstraction. its really just giving ints meaningful names. for example:
1 2 3 4 5 6
namespace op {
enumoperator {
plus = '+',
minus = '-',
};
}
op::op foo = op::plus; // can be translated to int foo = whatever_the_int_value_of_+_is