Resultados de la búsqueda a petición "overload-resolution"
la llamada de sobrecargado con la función miembro ref-calificadores es ambiguo
Encontré un comportamiento extraño al completar mi código conG ++ (gcc4.8.1 y MinGW4.8.2 con-std=gnu++1y bandera). En espíritu de SSCCE, aislo el siguiente fragmento: struct C { template< typename X > auto f(X &&) const & { ; } template< ...
Resolución de sobrecarga peculiar con while (verdadero)
Estaba implementando sobrecargas de sincronización / asíncrona cuando me encontré con esta situación peculiar: Cuando tengo una expresión lambda regular sin parámetros o un valor de retorno, va alRun sobrecargar con elAction parámetro, que es ...
Inicialización de lista y resolución de sobrecarga fallida del constructor initializer_list
Lo siguiente no se compila conclang35 -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 << ...
¿Por qué la caída del puntero tiene prioridad sobre una plantilla deducida?
Digamos que estoy escribiendo una función para imprimir la longitud de una cadena: template <size_t N> void foo(const char (&s)[N]) { std::cout << "array, size=" << N-1 << std::endl; } foo("hello") // prints array, size=5Ahora quiero extenderfoo ...
Si la dirección de una función no se puede resolver durante la deducción, ¿es SFINAE o un error del compilador?
En C ++ 0x, las reglas de SFINAE se han simplificado de forma tal que cualquier expresión o tipo no válido que ocurra en el "contexto inmediato" de deducción no resulte en un error del compilador sino en un error de deducción (SFINAE). Mi ...
¿Por qué falla aquí la inferencia de tipo Scala?
yo tengoesta clase [http://jamesgolick.com/2010/2/8/monkey-patching-single-responsibility-principle-and-scala-implicits.html] en Scala: object Util { class Tapper[A](tapMe: A) { def tap(f: A => Unit): A = { f(tapMe) tapMe } def tap(fs: (A => ...
Prioridad de inicialización de lista del objeto del mismo tipo
#include <iostream> #include <initializer_list> using namespace std; struct CL { CL(){} CL (std::initializer_list<CL>){cout<<1;} CL (const CL&){cout<<2;} }; int main() { CL cl1; CL cl2 {cl1}; //prints 21 }Aquí estáCL struct con copy constructor y ...
¿Cómo funciona la resolución de sobrecarga cuando un argumento es una función sobrecargada?
PreámbuloLa resolución de sobrecarga en C ++ puede ser un proceso demasiado complejo. Se necesita un gran esfuerzo mental para comprender todas las reglas de C ++ que rigen la resolución de sobrecarga. Recientemente se me ocurrió que la presencia ...