Resultados de la búsqueda a petición "overload-resolution"
Lambdas sobrecargadas en C ++ y diferencias entre clang y gcc
Estoy jugando con un truco para sobrecargar lambdas en C ++. Específicamente: // For std::function #include <functional> // For std::string #include <string> // For std::cout #include <iostream> template <class... F> struct overload : F... { ...
Reglas de sobrecarga de funciones con plantilla de C ++
Al sobrecargar una función con plantilla, ¿cómo debe elegir el compilador a qué versión de la función llamar si tiene la opción de: Llame a una versión con plantilla de la función (comofunc<T>(foo))Llame a una versión sobrecargada de la función ...
Resolución de sobrecarga: asignación de llaves vacías
Escribi algun codigoS s; ...s = {};, esperando que termine igual queS s = {};. Sin embargo no lo hizo. El siguiente ejemplo reproduce el problema: #include <iostream> struct S { S(): a(5) { } S(int t): a(t) {} S &operator=(int t) { a = t; return ...
Determinar qué sobrecarga se seleccionó
Digamos que tengo una función sobrecargada complicada arbitraria: template <class T> void foo(T&& ); template <class T> void foo(T* ); void foo(int );Quiero saber, para una expresión dada,cual foo() se llama. Por ejemplo, dada alguna ...
SFINAE no sucede con std :: subyacente_tipo
Debajo del código SFINAE con plantillas variadas se compila muy bien usando clang 3.7.1, C ++ 14: #include <array> #include <iostream> #include <vector> #include <cstdint> enum class Bar : uint8_t { ay, bee, see }; struct S { static void foo() ...
Resolución de sobrecarga / ambigüedad en la búsqueda de nombre (cuál)
$ 7.3.3 / 14 (C ++ 03) struct A { int x(); }; struct B : A { }; struct C : A { using A::x; int x(int); }; struct D : B, C { using C::x; int x(double); }; int f(D* d) { return d->x(); // ambiguous: B::x or C::x }El comentario en el código en 'f' ...
¿Función con tipo de parámetro que tiene un constructor de copia con referencia no constante seleccionada?
Hace algún tiempo estaba confundido por el siguiente comportamiento de algún código cuando quería escribir unis_callable<F, Args...> rasgo. La resolución de sobrecarga no llamará a las funciones que acepten argumentos por una referencia no ...
Método de resolución de sobrecarga con respecto a genéricos e IEnumerable
Me di cuenta de esto el otro día, digamos que tienes dos métodos sobrecargados: public void Print<T>(IEnumerable<T> items) { Console.WriteLine("IEnumerable T"); } public void Print<T>(T item) { Console.WriteLine("Single T"); }Este ...
¿Cómo decide el sistema de resolución de sobrecarga de métodos qué método llamar cuando se pasa un valor nulo?
Entonces, por ejemplo, tienes un tipo como: public class EffectOptions { public EffectOptions ( params object [ ] options ) {} public EffectOptions ( IEnumerable<object> options ) {} public EffectOptions ( string name ) {} public EffectOptions ...
¿El argumento sobrecargado de grupo de métodos confunde la resolución de sobrecarga?
La siguiente llamada a la @ sobrecargaEnumerable.Select [http://msdn.microsoft.com/en-us/library/system.linq.enumerable.select.aspx] método: var itemOnlyOneTuples = "test".Select<char, Tuple<char>>(Tuple.Create); falla con un error de ...