В этом ответе упоминалось, что в готовящемся стандарте C++20 можно использовать оператор using
для enum class
и импортировать поля enum в локальное пространство имен.
Мне было интересно, означает ли это, что я также могу использовать его в определениях классов следующим образом:
class Foo {
enum class Color
{
red,
blue
};
using enum Color;
};
int main()
{
Foo::Color c = Foo::red;
}
Или мне все еще нужно указать полное пространство имен?:
Foo::Color c = Foo::Color::red;
Пробовал на wandbox.org, но, похоже, ни gcc, ни clang пока не знают про using enum
.