Resultados de la búsqueda a petición "type-constraints"

3 la respuesta

¿Por qué debo redeclarar la restricción de tipo en una subclase genérica?

Recientemente intenté crear una subclase genérica implementando una interfaz genérica. public interface IModule<T> where T : DataBean { ..... } public class Module<T> : IModule<T> where T : DataBean { .... }Parece que no puedo confiar en ...

2 la respuesta

Patrón de rasgos genéricos furiosamente recurrentes: desbordamiento evaluando el requisito

Estoy tratando de implementar una estructura genérica con un montón de campos, donde cada uno de los tipos de campo debe saber sobre el tipo exacto de toda la estructura. Es una especie de patrón de estrategia. pub struct Example<S: ...

3 la respuesta

Métodos genéricos de C #, escriba los parámetros en la restricción del constructor new ()

¿Hay alguna manera de crear un Método genérico que use elnew() ¿Restricción de constructor para requerir clases con constructores de tipos específicos? Por ejemplo: Tengo el siguiente código: public T MyGenericMethod<T>(MyClass c) where T : ...

3 la respuesta

¿Cuándo debería o no debería usar restricciones de tipo genérico?

4 la respuesta

¿Por qué las restricciones de tipo no son parte de la firma del método?

Así que leíEric Lippert 'Las restricciones no son parte de la firma' [http://blogs.msdn.com/b/ericlippert/archive/2009/12/10/constraints-are-not-part-of-the-signature.aspx] , y ahora entiendo que la especificación especifica que las restricciones ...

4 la respuesta

Restricciones de parámetros de tipo reflexivo: X <T> donde T: X <T> - ¿alguna alternativa más simple?

Cada cierto tiempo hago que una interfaz simple sea más complicada al agregarle una restricción de parámetro de tipo autorreferenciada ("reflexiva"). Por ejemplo, podría convertir esto: interface ICloneable { ICloneable Clone(); } class Sheep : ...

4 la respuesta

¿Por qué el compilador elige esta función de plantilla en lugar de una función que no está sobrecargada?

Utilizando VC ++ 2010, dado lo siguiente: class Base { }; class Derived : public Base { }; template<class T> void foo(T& t); // A void foo(Base& base); // B Derived d; foo(d); // calls A foo(static_cast<Base&>(d)); // calls B Me gustaría que se ...

1 la respuesta

Instancia de Functor para un GADT con restricción de tipo

Hoy quise investigar si es posible construir un tipo de datos de tal manera que no almacene los datos del tipo de su tipo de firma, sino otra representación ...

4 la respuesta

F # A un parámetro de tipo le falta una restricción

Estoy tratando de definir un operador de suma genérico para una clase de contenedor. Hasta ahora tengo esto: (simplificado del código real) type Wrap<'a> = | Wrap of 'a static member inline (+) (Wrap x, Wrap y) = Wrap (x + y) let inline addSelf ...

3 la respuesta

¿Cómo poner restricciones a los datos asociados?