Suchergebnisse für Anfrage "overload-resolution"
Mehrdeutiger Methodenaufruf mit Überladung des Parameters Action <T>
Beim Aufrufen einer überladenen Methode mit einem anderen Compiler ist ein unerwartetes Verhalten aufgetretenAction<T> Variationen. Nehmen wir an, ich habe diese KlasseTest und ich erstelle seine Instanz in derCallTest Konstrukteur. public ...
Eigenartige Überlastungsauflösung mit while (true)
Ich habe Synchronisierungs- / Asynchronisierungsüberladungen implementiert, als ich auf diese besondere Situation gestoßen bin: Wenn ich einen regulären Lambda-Ausdruck ohne Parameter oder einen Rückgabewert habe, geht er an denRun Überladung ...
Warum kann ich std :: get <0> nicht in std :: transform verwenden?
Beim Versuch, den folgenden Code zu kompilieren, der ein @ kopieren würmaps Schlüssel zu einemvector: map<string, string> mss; vector<string> vs; transform(mss.begin(), mss.end(), back_inserter(vs), get<0>); VS2013 kann nicht unterscheiden, ...
List-Initialisierung und fehlgeschlagene Überladungsauflösung des Konstruktors initializer_list
Das Folgende kann nicht mit @ kompiliert werdclang35 -std=c++11: #include <iostream> #include <string> #include <initializer_list> class A { public: A(int, bool) { std::cout << __PRETTY_FUNCTION__ << std::endl; } A(int, double) { std::cout << ...
Warum hat der Pointer Decay Vorrang vor einer abgeleiteten Vorlage?
Angenommen, ich schreibe eine Funktion zum Drucken der Länge einer Zeichenfolge: template <size_t N> void foo(const char (&s)[N]) { std::cout << "array, size=" << N-1 << std::endl; } foo("hello") // prints array, size=5Nun möchte ...
Wenn die Adresse einer Funktion während der Deduktion nicht aufgelöst werden kann, liegt ein SFINAE- oder ein Compilerfehler vor?
In C ++ 0x wurden SFINAE-Regeln so vereinfacht, dass ungültige Ausdrücke oder Typen, die im "unmittelbaren Kontext" des Abzugs auftreten, nicht zu einem Compilerfehler, sondern zu einem Abzugsfehler (SFINAE) führen. Meine Frage lautet: Wenn ich ...
Wie wird die Mehrdeutigkeit im Überlastungsauflösungsalgorithmus bestimmt?
Ich versuche, die Überladungslösungsmethode zu verstehen. Warum ist das nicht eindeutig: void func(double, int, int, double) {} void func(int, double, double, double) {} void main() { func(1, 2, 3, 4); }aber das ist nicht? void func(int, int, ...
Was sind die Tücken von ADL?
Vor einiger Zeit habe ich einen Artikel gelesen, in dem einige Fallstricke der argumentabhängigen Suche erklärt wurden, aber ich kann ihn nicht mehr finden. Es ging darum, Zugang zu Dingen zu bekommen, zu denen man keinen Zugang haben sollte, ...
Überladene Lambdas in C ++ und Unterschiede zwischen clang und gcc
Ich spiele mit einem Trick, um Lambdas in C ++ zu überladen. Speziell // For std::function #include <functional> // For std::string #include <string> // For std::cout #include <iostream> template <class... F> struct overload : F... { ...
Warum wird eine generische Methode gewählt, wenn es eine nicht generische gibt?
Das folgende Programm erzeugt diese Ausgabe: Foo<T> called Process is terminated due to StackOverflowException.So,Foo(baz) ruft das generische @ aFoo<T>, aberBar(baz) rekursiv und machtnich AnrufBar<T>. Ich bin auf C # 5.0 und Microsoft .NET. ...