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:...")
 
 
(Nie pokazano 1 pośredniej wersji utworzonej przez tego samego użytkownika)
Linia 1: Linia 1:
 
+
== Przykład 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