| 
 | |||||||
| 
 | 
|  | 
|  | 
|  | Strumenti | 
|  18-05-2007, 16:07 | #1 | 
| Member Iscritto dal: May 2007 
					Messaggi: 34
				 | 
				
				Differenze tra funzioni e procedure
			 
		Salve a tutti. Volevo chiedervi quali sono secondo voi le maggiori differenze tra funzioni e procedure nei linguaggi C, C++ e java. Grazie a tutti   | 
|   |   | 
|  18-05-2007, 16:25 | #2 | |
| Senior Member Iscritto dal: Nov 2005 Città: TO 
					Messaggi: 5206
				 | Quote: 
 In C/C++ si parla di "funzioni" e riferito al C++ quando si programma ad oggetti, si parla di "funzioni membro". In Java, C# e altri linguaggi ad oggetti si parla di "metodi". 
				__________________ Andrea, SCJP 5 (91%) - SCWCD 5 (94%) | |
|   |   | 
|  18-05-2007, 16:56 | #3 | 
| Senior Member Iscritto dal: Jul 2005 Città: Bologna 
					Messaggi: 1130
				 | 
		Nei linguaggi che hai indicato non c'è sta gran differenza. In altri linguaggi invece la differenza c'è eccome...tipo pl/sql ad esempio...
		 
				__________________ -> The Motherfucking Manifesto For Programming, Motherfuckers | 
|   |   | 
|  18-05-2007, 16:57 | #4 | 
| Senior Member Iscritto dal: Jul 2006 Città: Tristram 
					Messaggi: 517
				 | 
		Diciamo che tradizionalmente, almeno a livello teorico le funzioni si distinguono dalle procedure in quanto ritornano al chiamante un valore, mentre le procedure si limitano ad eseguire una porzione di codice senza ritornare valori. Chiaramente poi dipende da cosa stai utilizzando; ad esempio, in C esistono solo le funzioni; per ovviare, le procedure vengono dichiarate come funzioni che ritornano un tipo void (ovvero vuoto, niente). Stesso discorso per c++ e java, con la differenza che qui siamo in presenza di linguaggi ad oggetti quindi le funzioni (o meglio metodi) sono innestate all'interno di classi ed hanno un comportamento differente, perlomeno a livello logico. A livello di codice macchina, invece, il comportamento è sempre quello descritto da andbin, sia con un linguaggio procedurale che con uno ad oggetti: mediamente, un salvataggio di registri sullo stack, compreso il program counter, un jump con esecuzione di altre istruzioni e quindi il pop (ovvero il caricamento) del PC precedentemente salvato per riprendere l'esecuzione dall'istruzione successiva. Questo, ovviamente, in linea MOLTO generale.
		 
				__________________ Il sole è giallo | 
|   |   | 
|   | 
| Strumenti | |
| 
 | 
 | 
Tutti gli orari sono GMT +1. Ora sono le: 20:18.









 
		 
		 
		 
		









 
  
 



 
                        
                        










