Hej, Jeg tænkte på om der er nogen der kan give mig svar på nogen af flg. spørgsmål. Er det muligt at manipulerer vtable runtime sådan at kalder man en method_1 klasse en C så bliver metode_2 kaldt istedet for.
class C { public: void method_1( void ) { } void method_2( void ) { } };
Skal virksomheder stå stærkere mod angreb og kunne udvikle sig, skal sikkerhed, drift og forretning tænkes sammen. Det er tanken bag Jysk IT’s ambition om at skabe en “sikker fremtid” for kunderne.
class D1 : public X { public: void Foo() { std::cout << "D1::Foo" << std::endl; } };
class D2 : public X { public: void Foo() { std::cout << "D2::Foo" << std::endl; } };
int main() { X *obj = new D2; obj->Foo(); obj->Exchange((void (X::*)())&D1::Foo); obj->Foo(); }
Jeg tror at det er rigtigt, men så er problemet at vtable så vidt jeg kan se er read-only :-(
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.