Siempre declaramos una función virtual pura como:
virtual void fun () = 0 ;
Es decir, siempre se asigna a 0.
Lo que entiendo es que esto es para inicializar la entrada vtable para esta función a NULL y cualquier otro valor aquí resulta en un error de tiempo de compilación. ¿Es este entendimiento correcto o no?
virtual void func() = 100;