Using with enum class (C++20): Różnice pomiędzy wersjami

Z Marcin wiki
Skocz do: nawigacji, wyszukiwania
(Utworzono nową stronę " # Przykład 1 enum class Status { Unknown, Created, Connected }; void process(Status const s) { switch (s) { using enum Status; case Unknown:...")
 
Linia 13: Linia 13:
 
     }
 
     }
 
   }
 
   }
 +
 +
# Przykład 2
 +
 +
    struct foo
 +
    {
 +
      enum class Status { Unknown, Created, Connected };
 +
      using enum Status;
 +
    };
 +
    foo::Status s = foo::Created; // instead of
 +
                                // foo::Status::Created

Wersja z 07:41, 5 kwi 2021

  1. 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;
   }
 }
  1. Przykład 2
   struct foo
   {
     enum class Status { Unknown, Created, Connected };
     using enum Status;
   };
   foo::Status s = foo::Created; // instead of
                               // foo::Status::Created