| 
 | |||||||
| 
 | 
|  | 
|  | 
|  | Strumenti | 
|  10-12-2017, 21:47 | #1 | 
| Junior Member Iscritto dal: Feb 2017 
					Messaggi: 15
				 | 
				
				[C++/OOP] Visibilità GET e SET
			 
		Ho una classe con funzioni SET e GET I parametri passati nella SET sono passati per valore Ma un parametro passato per valore non ha visibilità limitata a quella funzione (cioè la funz. SET)? Come fa la GET a "vedere" quegli stessi valori e a restituirli? Grazie | 
|   |   | 
|  11-12-2017, 10:31 | #2 | |
| Senior Member Iscritto dal: Aug 2017 
					Messaggi: 469
				 | Quote: 
 La set imposta il valore di _valore e la get lo torna. | |
|   |   | 
|  11-12-2017, 10:32 | #3 | |
| Moderatore Iscritto dal: Nov 2006 
					Messaggi: 21837
				 | Quote: 
 comunque posta il codice incriminato così lo vediamo 
				__________________ "WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX) Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000 | |
|   |   | 
|  11-12-2017, 12:15 | #4 | 
| Junior Member Iscritto dal: Feb 2017 
					Messaggi: 15
				 | 
		È un esercizio semplice, il mio più che altro è un dubbio su un aspetto teorico Ho l'interfaccia di una classe numero complesso class Complex{ private: float Re; float Im; public: Complex(float RE=0.0,float IM=0.0){Re=RE;Im=IM;} //costruttore float getRe()const {return Re;} //GET float getIm()const {return Im;} //GET void setRe(float RE){Re=RE;} //SET void setIm(float IM){Im=IM;} //SET } Il mio dubbio è: la visibilità del parametro passato per valore alla set non dovrebbe essere limitata alla funzione set? Come fa quel valore ad "arrivare" alla funzione get? Non dovrei usare un passaggio per riferimento o per indirizzo per quello? O nella classe questa regola non vale? (ad es. chiamo la funzione setRe(10), cioè passo a Re il valore 10. Ma dovrebbe essere limitato alla funzione set, o no?) | 
|   |   | 
|  11-12-2017, 18:35 | #5 | 
| Senior Member Iscritto dal: Aug 2017 
					Messaggi: 469
				 | 
		La variabile a cui mi riferivo io è proprio come Re
		 | 
|   |   | 
|  11-12-2017, 19:30 | #6 | 
| Moderatore Iscritto dal: Nov 2006 
					Messaggi: 21837
				 | 
		
Re è una variabile della classe definita come privata quindi è visibile a tutti i metodi della classe siano essi privati pubblici o protetti occhio che RE e Re hanno due scope nettamente diversi RE è il parametro della funzione e ha uno scope limitato solo alla funzione (quello che pensavi tu) ma se nel corpo della funzione assegni a Re il valore di RE imposti la variabile interna al valore di RE ed è quello che viene ritornato dalla funzione GET 
				__________________ "WS" (p280,cx750m,4790k+212evo,z97pro,4x8GB ddr3 1600c11,GTX760-DC2OC,MZ-7TE500, WD20EFRX) Desktop (three hundred,650gq,3800x+nh-u14s ,x570 arous elite,2x16GB ddr4 3200c16, rx5600xt pulse P5 1TB)+NB: Lenovo p53 i7-9750H,64GB DDR4,2x1TB SSD, T1000 | 
|   |   | 
|  12-12-2017, 10:08 | #7 | 
| Junior Member Iscritto dal: Feb 2017 
					Messaggi: 15
				 | 
		Ho capito, grazie mille
		 | 
|   |   | 
|   | 
| Strumenti | |
| 
 | 
 | 
Tutti gli orari sono GMT +1. Ora sono le: 20:13.









 
		 
		 
		 
		








 
  
 



 
                        
                        










