Suchergebnisse für Anfrage "c++14"
Wie schreibe ich ein generisches variadisches Lambda, das seine Parameter verwirft?
Ich möchte ein Lambda schreiben, das eine beliebige Anzahl von Argumenten als universelle Referenz verwendet und sie vollständig ignoriert. Die naheliegende Methode wäre, die Syntax für ein universelles Parameterpaket zu verwenden und den ...
invalid initialization of non-const reference from a rvalue
So habe ich folgende Funktion: void scan(std::istream& is, Handler& h);Ich möchte es auf verschiedene Arten aufrufen, wie: scan(std::cin, Handler()); scan(std::ifstream("myfile"), myhandler); Der Compiler beschwert sich ...
Verwendung von string_view für die Kartensuche
Der folgende Code baut nicht auf aktuellen Compilern auf (g ++ - 5.3, clang ++ - 3.7). #include <map> #include <functional> #include <experimental/string_view> void f() { using namespace std; using namespace std::experimental; map<string, ...
T declval () anstelle von T && declval () für common_type
Ist es nicht besser, @ zu verwendstd::declval in Form deklariert: template< class T > T declval(); // (1) dann aktuelle: template< class T > T && declval(); // (2)zumstd::common_type (möglicherweise nur für diesen aktuellen Zweck mit einem ...
Verstehen von Y Combinator durch generische Lambdas
eim Aufbau einer kleinen Lambda-basierten Metaprogramm-Bibliothek musste ich in einem generischen C ++ 14-Lambda eine Rekursion verwenden, um ein @ zu implementiere left-fold [https://en.wikipedia.org/wiki/Fold_(higher-order_function)]. Meine ...
Ermitteln, ob ein Konstruktor einer abstrakten Basisklasse noexcept ist?
n C ++ 11 und höher, wie Sie bestimmen, ob ein Konstruktor einer abstrakten Basisklasse @ inoexcept? Die folgenden Methoden funktionieren nicht: #include <new> #include <type_traits> #include <utility> struct Base { Base() noexcept; virtual int ...
Können wir in einer noexcept-Spezifikation auf Member-Variablen verweisen?
Bitte beachten Sie den folgenden Codeausschnitt: template<class Tuple> class vector { public: typename Tuple::size_type size() const noexcept(noexcept(m_elements.size())) { return m_elements.size(); } private: Tuple m_elements; }; class tuple { ...
Kann ich einen Funktionstyp schreiben, der eine Funktion zurückgibt?
Das Folgende kann nicht auf gcc und clang kompiliert werden #include <type_traits> int foo(); int main() { using R = std::result_of_t<decltype(foo)()>; // error } Der Fehler auf beiden Compilern betrifft die Unzulässigkeit der Deklaration einer ...
Ist ein standardmäßiger Konstruktor / eine standardmäßige Zuweisung noexcept / constexpr?
Also, meine Frage ist einfach: Ist es sinnvoll, einen standardmäßigen Klassenkonstruktor als @ anzugebenoexcept oderconstexpr (oder irgendetwas anderes, woran du denken könntest)? struct foo { foo() = default; // vs constexpr foo() noexcept = ...
Kann ich C ++ - Typnamen auf constexpr-Weise erhalten?
Ich möchte beim Kompilieren den Namen eines Typs verwenden. Angenommen, ich habe geschrieben: constexpr size_t my_strlen(const char* s) { const char* cp = s; while(*cp != '\0') { cp++; }; return cp - s; }und jetzt möchte ich haben: template ...