не совсем очевидно, о чем вы просите, но предположим, что у вас есть перечисление вроде:
enum Fruits
{
Apples,
Bananas,
Pineapples,
Oranges,
};
Вы можете изменить это так:
enum Fruits
{
Apples = 0,
Bananas,
Pineapples,
Oranges,
NUM_FRUITS; // must be last, and no other fruits can be given values.
};
Apples = 0,
не является строго необходимым, он все равно может быть просто Apples,
, потому что это будет результат по умолчанию, но это хорошая идея, потому что он дает понять, что вы на самом деле заботитесь какое значение он принимает.
И, таким образом, Fruits::NUM_FRUITS
будет равно 4. Если вы добавите еще два фрукта, соблюдайте осторожность, чтобы поместить их над NUM_FRUITS
, и убедитесь, что первый упомянутый фрукт установлен на ноль, либо неявно или явно, тогда NUM_FRUITS
будет вместо 6.