Suchergebnisse für Anfrage "overload-resolution"

3 die antwort

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 ...

1 die antwort

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 ...

4 die antwort

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, ...

TOP-Veröffentlichungen

2 die antwort

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 << ...

2 die antwort

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 ...

2 die antwort

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 ...

6 die antwort

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, ...

4 die antwort

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, ...

4 die antwort

Ü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... { ...

6 die antwort

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. ...