C eller C++ ?

C, C++, Pascal, Assembly, Raspberry, Java, Matlab, Python, BASIC, SQL, PHP, etc.
ensamresande
Inlägg: 131
Blev medlem: 6 april 2014, 16:59:47

Re: C eller C++ ?

Inlägg av ensamresande »

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.
ensamresande
Inlägg: 131
Blev medlem: 6 april 2014, 16:59:47

Re: C eller C++ ?

Inlägg av ensamresande »

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.
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: C eller C++ ?

Inlägg av sodjan »

Ja, jag tyckte att det så ut något i den stilen.
Inte "riktig" self-modifying code, så att säga. :-)
Skriv svar