Articles of virtual

¿Por qué una función virtual se oculta?

Tengo las siguientes clases: class A { public: virtual void f() {} }; class B : public A{ public: void f(int x) {} }; Si yo digo B *b = new B(); b->f(); el comstackdor dice error C2660: ‘B :: f’: la función no toma 0 argumentos. ¿No debería la función en B sobrecargarla, ya […]

¿Por qué los sistemas x86-64 solo tienen un espacio de direcciones virtuales de 48 bits?

En un libro, leo lo siguiente: Los procesadores de 32 bits tienen 2 ^ 32 direcciones posibles, mientras que los procesadores actuales de 64 bits tienen un espacio de direcciones de 48 bits Mi expectativa era que si se trata de un procesador de 64 bits, el espacio de direcciones también debería ser de 2 […]

¿Cuál es el VTT para una clase?

Recientemente me encontré con un error de enlazador de C ++ que era nuevo para mí. libfoo.so: undefined reference to `VTT for Foo’ libfoo.so: undefined reference to `vtable for Foo’ Reconocí el error y solucioné mi problema, pero todavía tengo una pregunta persistente: ¿qué es exactamente un VTT? Aparte: para los interesados, el problema ocurre […]

Escribir una impresora virtual en .NET

Estoy buscando crear una impresora virtual que transfiera datos a mi aplicación .NET. Entonces quiero crear un instalador que instale tanto la impresora como la aplicación .NET. Sería realmente agradable poder escribirlo todo en C #, pero tengo la sensación de que esto requerirá que se escriba un controlador de impresora sin código administrado. ¿Alguien […]

No se puede hacer que Mongoose virtuals forme parte del objeto de resultado

Estoy declarando una virtual que quiero que aparezca como parte de los resultados de las consultas de su esquema, pero no aparece cuando hago una consola.log en el objeto. Aquí está el esquema: var schema = new mongoose.Schema( { Name: { type: String } }, { toObject: { virtuals: true } }); schema.virtual(“Greet”).get(function() { return […]

¿Cómo limitar la memoria de un progtwig OS X? ulimit -v tampoco -m están funcionando

Mis progtwigs se quedan sin memoria como la mitad de las veces que los ejecuto. En Linux, puedo establecer un límite estricto para la memoria disponible utilizando ulimit -v mem-in-kbytes. En realidad, utilizo ulimit -S -v mem-in-kbytes, por lo que tengo un problema de asignación de memoria adecuado en el progtwig y puedo abortar. Pero […]

C ++ ¿Cuál es el propósito del casting para anular?

Posible duplicado: lanzando valores de retorno no usados ​​a vacío Leí un código fuente, y en él muchas funciones virtuales en las clases de interfaz se declaran y se implementan por defecto como tales: virtual bool FunctionName(TypeName* pointer) { (void)pointer; return true; } ¿Puedo preguntar cuál es el propósito de anular el puntero en la […]

Tablas virtuales y diseño de memoria en múltiples herencia virtual

Considera seguir jerarquía: struct A { int a; A() { f(0); } A(int i) { f(i); } virtual void f(int i) { cout << i; } }; struct B1 : virtual A { int b1; B1(int i) : A(i) { f(i); } virtual void f(int i) { cout << i+10; } }; struct B2 : […]

¿Está bien llamar al método abstracto desde el constructor en Java?

Supongamos que tengo una clase Base abstracta que implementa la interfaz Runnable. public abstract class Base implements Runnable { protected int param; public Base(final int param) { System.out.println(“Base constructor”); this.param = param; // I’m using this param here new Thread(this).start(); System.out.println(“Derivative thread created with param ” + param); } @Override abstract public void run(); } […]

Llamar a la función virtual desde el destructor

¿Esto es seguro? class Derived: public PublicBase, private PrivateBase { … ~Derived() { FunctionCall(); } virtual void FunctionCall() { PrivateBase::FunctionCall(); } } class PublicBase { virtual ~PublicBase(){}; virtual void FunctionCall() = 0; } class PrivateBase { virtual ~PrivateBase(){}; virtual void FunctionCall() { …. } } PublicBase* ptrBase = new Derived(); delete ptrBase; Este código se […]