|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Sep 2005
Messaggi: 70
|
Passare una funzione come parametro di un metodo
Ciao!
il mio problema è passare come argomento di un metodo una funzione tipo sinx, il metodo che accetta questa funzione deve essere in grado di riconoscere la x come una variabile sulla quale esegue le operazioni dovute. Il mio metodo serve per il calcolo dell'integrale definito di una funzione. Ora se io passo al metodo la funzione sotto forma di stringa, da dentro il metodo non riesco fare in modo che questa stringa venga utilizzata come una funzione e non come stringa o char. ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
|
Facciamo prima con un esempio:
Codice:
typedef double (*my_fnc) (double); void doit(my_fnc fnc, double arg) { printf("fnc(%f)=%f\n", arg, fnc(arg)); } int main() { doit(sin, 0.0); doit(cos, 0.0); return 0; }
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12 |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
Quote:
Stabilisci il tipo di funzione cioè valore restituito e parametri: Codice:
double IntegralOf(double x, double (*function)(double)) { ... } |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:24.