Tag: enable-if

`std::enable_if` ist eine C++ – metafunction Vorlage mit Parameter “ bool B`, `class T = void`,
definiert in der Standard C++ – header “ type_traits`. Wenn “ B “ wahr ist, dann ist das instanzieren
Klasse definiert eine öffentliche member-type `type` gleich `T`; sonst ist es nicht.

Warum enable_if_t in template-Argumente beschwert sich über neudefinitionen?

Anzahl der Antworten 4 Antworten
Ich habe folgenden Fall, der arbeitet mit std::enable_if : template<typename T, typename std::enable_if<std::is_same<int, T>::value>::type* = nullptr> void f() { } template<typename T, typename std::enable_if<std::is_same<double, T>::value>::type* = nullptr> void f() { } Nun, ich sah in cppreference die

Warum compile-Fehler mit enable_if

Anzahl der Antworten 5 Antworten
Warum diese nicht kompilieren mit gcc48 und clang32? #include <type_traits> template <int N> struct S { template<class T> typename std::enable_if<N==1, int>::type f(T t) {return 1;}; template<class T> typename std::enable_if<N!=1, int>::type f(T t) {return 2;}; }; int main()

Warum sollte ich std :: enable_if in Funktionssignaturen vermeiden?

Anzahl der Antworten 3 Antworten
Scott Meyers gebucht Inhalt und status von seinem nächsten Buch EG++11. Er schrieb, dass ein Element in dem Buch werden könnte "Vermeiden std::enable_if im Funktions-Signaturen". std::enable_if verwendet werden kann als Funktionsargument, als Rückgabetyp oder als eine Vorlage-Klasse

Wie schreibe ich eine Typeigenschaft `is_container` oder` is_vector`?

Anzahl der Antworten 10 Antworten
Ist es möglich, zu schreiben, eine Art Eigenschaft, deren Wert true ist für alle gängigen STL-Strukturen (z.B., vectorsetmap...)? Loslegen, würde ich mag zu schreiben, eine Art Eigenschaft, die true für eine vector andernfalls false. Ich habe versucht,