Почему должен быть указан размер перечисления, если оно объявлено заранее?
Я просто не понимаю, почему размер перечисления важен для компилятора, а размер класса - нет.
Мой пример кода:
class A;
enum E; // must be enum E : int; in order to compile
void f(const A & param);
void f(const E & param);
Я говорю здесь о стандартных компиляторах C ++. Я знаю, что MSVC позволяет его компилировать и работает нормально. Итак, вопрос:
Почему это не было стандартизировано?