Oppure

Loading
23/11/09 15:30
zoro92
ragazzi sto studiando le classi, ma c'è un cosa che continuo a non capire nonostante la leggo sul libro:

A cosa serve " setXY "?


..e poi mi potreste spiegare il significato delle seguenti stringhe?

1- a= setXY(5,3);
2- setXY(int a,int b);
3- void setXY(int a,int b);
4- a.setXY(5,3);
aaa
23/11/09 15:56
Guglielmo
Da quanto ho capito dovrebbe essere così:
1- a= setXY(5,3); => è errato perchè nella dichiarazione successiva setXY non ritorna nulla
2- setXY(int a,int b); => è errato perchè manca il tipo di ritorno della funzione
3- void setXY(int a,int b); => è un prototipo di una funzione che riceve i parametri interi a e b, e non ritorna nulla
4- a.setXY(5,3); => è un richiamo di un metodo dell'oggetto 'a' di un tipo definito in precedenza(o una classe o una struttura). 
Ultima modifica effettuata da Guglielmo 23/11/09 16:00
aaa
23/11/09 17:18
gio97
Postato originariamente da Guglielmo:

Da quanto ho capito dovrebbe essere così:
1- a= setXY(5,3); => è errato perchè nella dichiarazione successiva setXY non ritorna nulla
2- setXY(int a,int b); => è errato perchè manca il tipo di ritorno della funzione
3- void setXY(int a,int b); => è un prototipo di una funzione che riceve i parametri interi a e b, e non ritorna nulla
4- a.setXY(5,3); => è un richiamo di un metodo dell'oggetto 'a' di un tipo definito in precedenza(o una classe o una struttura). 


setXY viene dichiarata due volte, la prima restituisce un int, la seconda un void, quindi non è errato il primo prototipo. Però messe giù così queste quattro righe non hanno molto senso, sarebbero da vedere con tutto il codice.
aaa
23/11/09 17:39
HeDo

senza codice e senza tutto il testo del quesito questa domanda non ha senso.
chiedo a guglielmo se mi presta la sfera di cristallo, perchè lui sembra che abbia capito :)

il quesito ti chiede quale è giusta?
aaa
23/11/09 19:12
Guglielmo
Postato originariamente da gio97:

Postato originariamente da Guglielmo:

Da quanto ho capito dovrebbe essere così:
1- a= setXY(5,3); => è errato perchè nella dichiarazione successiva setXY non ritorna nulla
2- setXY(int a,int b); => è errato perchè manca il tipo di ritorno della funzione
3- void setXY(int a,int b); => è un prototipo di una funzione che riceve i parametri interi a e b, e non ritorna nulla
4- a.setXY(5,3); => è un richiamo di un metodo dell'oggetto 'a' di un tipo definito in precedenza(o una classe o una struttura). 


setXY viene dichiarata due volte, la prima restituisce un int, la seconda un void, quindi non è errato il primo prototipo. Però messe giù così queste quattro righe non hanno molto senso, sarebbero da vedere con tutto il codice.
Non mi sembra sia possibile definire un prototipo senza un tipo di ritorno. Comunque sia e meglio se posti il testo completo se no sara dura riuscire a risponderti(scusate ma sto scrivendo dal cellulare)
aaa
23/11/09 19:22
TheKaneB
confermo, C++ si incaXXa come una iena se non specifichi il tipo di ritorno. Il default int del vecchio C non funziona qui.
aaa
24/11/09 6:17
gio97
Postato originariamente da TheKaneB:

confermo, C++ si incaXXa come una iena se non specifichi il tipo di ritorno. Il default int del vecchio C non funziona qui.


Mi sembrava di essere nella sezione C, me ne sono accorto adesso che si parla di C++. Comunque non potendo sapere come e dove è realmente definita setXY, non hanno assolutamente senso quelle quattro righe, in qualsiasi linguaggio.
Ultima modifica effettuata da gio97 24/11/09 6:18
aaa