Articles of polymorphism

¿Puedo anular una propiedad en c #? ¿Cómo?

Tengo esta clase base: abstract class Base { public int x { get { throw new NotImplementedException(); } } } Y el siguiente descendiente: class Derived : Base { public int x { get { //Actual Implementaion } } } Cuando compilo recibo esta advertencia diciendo que la definición de x de la clase derivada […]

Relación polimórfica HABTM

Soy bastante nuevo en Rails, y estoy tratando de hacer una relación HABTM polimórfica. El problema es que tengo tres modelos que quiero relacionar. El primero es el modelo de evento y luego hay dos tipos de asistentes: usuarios y contactos. Lo que quiero hacer es poder relacionar como asistente a los usuarios y contactos. […]

¿Cuándo se crea un vtable en C ++?

¿Cuándo exactamente el comstackdor crea una tabla de funciones virtuales? 1) cuando la clase contiene al menos una función virtual. O 2) cuando la clase base inmediata contiene al menos una función virtual. O 3) cuando cualquier clase padre en cualquier nivel de la jerarquía contiene al menos una función virtual. Una pregunta relacionada con […]

Ejecutar una aplicación en GDB hasta que ocurra una excepción

Estoy trabajando en una aplicación multiproceso, y quiero depurarlo usando GDB. El problema es que uno de mis hilos sigue muriendo con el mensaje: pure virtual method called terminate called without an active exception Abort Sé la causa de ese mensaje, pero no tengo idea de dónde se produce en mi hilo. Un backtrace realmente […]

La mejor forma de cambiar el comportamiento según el tipo

Posible duplicado: C # – ¿Hay una mejor alternativa que esta para ‘encender el tipo’? Considera el clásico: class Widget { } class RedWidget : Widget { } class BlueWidget : Widget { } En su mayor parte, en mi interfaz de usuario, puedo tratar todos los Widget la misma manera. Sin embargo, hay pequeñas […]

¿Cómo puedo usar atributos polimórficos con boost :: spirit :: qi parsers?

Me gustaría que mi analizador boost :: spirit-based pueda analizar un archivo, convertir las reglas analizadas en diferentes tipos y emitir un vector que contenga todas las coincidencias encontradas. Todos los tipos que se emiten como atributos se deben heredar de un tipo base, por ejemplo: #include #include #include #include struct CommandBase { virtual void […]

¿De qué sirve decir en lugar de

Así que estaba revisando un código Java y tropecé con: List l; básicamente esta lista acepta todos los objetos que son algún tipo de SomeObject – SomeObject o sus herederos. Pero de acuerdo con el polymorphism, sus herederos también se pueden ver como SomeObject, así que esto también funcionaría: List l; Entonces, ¿por qué alguien […]

Progtwigción If-less (básicamente sin condicionales)

He tenido un colega que me dijo que una vez trabajó para una compañía que tenía como política no tener condicionales (declaraciones “si” y “cambiar”) en el código y que dejaran que todas las decisiones en el código se hicieran usando polymorphism y (supongo) algunos otros principios OO. Entiendo el razonamiento detrás de esto, de […]

Error del comstackdor: referencia a llamada ambigua

Caso 1 static void call(Integer i) { System.out.println(“hi” + i); } static void call(int i) { System.out.println(“hello” + i); } public static void main(String… args) { call(10); } Salida del Caso 1: hello10 Caso 2 static void call(Integer… i) { System.out.println(“hi” + i); } static void call(int… i) { System.out.println(“hello” + i); } public static […]

¿Cuándo usar las enumeraciones y cuándo reemplazarlas con una clase con miembros estáticos?

Recientemente se me ocurrió que la siguiente enumeración (de muestra) … enum Color { Red, Green, Yellow, Blue } … podría ser reemplazado con una clase aparentemente más segura para el tipo: class Color { private Color() { } public static readonly Color Red = new Color(); public static readonly Color Green = new Color(); […]