Reflection används inte för någon variant av "self-modifying code", det används primärt för att kunna exempelvis kalla på kända funktioner i (vid kompileringen) okända klasser.
Exempelvis: du gör ett program som ska prata med en databas men du vill inte hårdkoda en specifik databas/drivrutin utan vill låta användaren kunna ange detta. Då använder man reflection för att dynamiskt ladda in och exekvera användarens klass/drivrutin. Denna måste då följa ett förutbestämt mönster så klart, så du vet vad du ska kalla på och så vidare, men för exempelvis databaser är detta standardiserat i vad som kallas JDBC.
C eller C++ ?
-
- Inlägg: 131
- Blev medlem: 6 april 2014, 16:59:47
-
- Inlägg: 131
- Blev medlem: 6 april 2014, 16:59:47
Re: C eller C++ ?
Kan tillägga också att motsvarande går utan problem att göra i exempelvis C++ med, men då handlar det om ett plattdormsspecifikt sätt. På exempelvis Windows laddar man in en DLL via LoadLibrary och kallar sedan på funktionen via GetProcAddress.
Re: C eller C++ ?
Ja, jag tyckte att det så ut något i den stilen.
Inte "riktig" self-modifying code, så att säga.
Inte "riktig" self-modifying code, så att säga.
