Using with enum class (C++20): Różnice pomiędzy wersjami
Z Marcin wiki
(Utworzono nową stronę " # Przykład 1 enum class Status { Unknown, Created, Connected }; void process(Status const s) { switch (s) { using enum Status; case Unknown:...") |
|||
| (Nie pokazano 1 pośredniej wersji utworzonej przez tego samego użytkownika) | |||
| Linia 1: | Linia 1: | ||
| − | + | == Przykład 1 == | |
| − | + | ||
enum class Status { Unknown, Created, Connected }; | enum class Status { Unknown, Created, Connected }; | ||
| Linia 13: | Linia 12: | ||
} | } | ||
} | } | ||
| + | |||
| + | == Przykład 2 == | ||
| + | |||
| + | struct foo | ||
| + | { | ||
| + | enum class Status { Unknown, Created, Connected }; | ||
| + | using enum Status; | ||
| + | }; | ||
| + | foo::Status s = foo::Created; // instead of | ||
| + | // foo::Status::Created | ||
Aktualna wersja na dzień 07:43, 5 kwi 2021
Przykład 1
enum class Status { Unknown, Created, Connected };
void process(Status const s)
{
switch (s)
{
using enum Status;
case Unknown: /*...*/ break;
case Created: /*...*/ break;
case Connected: /*...*/ break;
}
}
Przykład 2
struct foo
{
enum class Status { Unknown, Created, Connected };
using enum Status;
};
foo::Status s = foo::Created; // instead of
// foo::Status::Created