begin process at 2010 02 10 15:33:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

question : passage de parametre et methode avec retour de valeur.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

question : passage de parametre et methode avec retour de valeur.

mardi 22 novembre 2005 à 10:38:48 | question : passage de parametre et methode avec retour de valeur.

gege1024

y a t'il une difference entre:

int toto(int a)
{
return a;
}

et

void toto(int b,int&a)
{
b = a
}

parce que moi je pense que c'est la meme chose.
et pourquoi utiliser plus l'une ou l'autre methode ?

gege

mardi 22 novembre 2005 à 10:53:50 | Re : question : passage de parametre et methode avec retour de valeur.

luhtor

Pour ta première fonction:
int x = toto(4); => ca marche

alors que avec ta deuxième fonction non.
De plus, tu as du te planter, c'est plutot:
void toto(int & b,int a)
{
b = a
}

Mais en gros, je vois pas le rapport entre ces deux fonctions, pour moi elle sont totalement différentes.

mardi 22 novembre 2005 à 11:20:33 | Re : question : passage de parametre et methode avec retour de valeur.

gege1024

exemple concret:

2 methode d'une class CTest :

=============================
cpp

void CTest::Ajout(int a, int&b)
{
 b = a+2;
}
int CTest::Ajout2(int a)
{
 return a+2;
}
=============================

=============================
h
class CTest 
{
public:
 CTest();
 virtual ~CTest();

 void Ajout(int a, int&b);
 int Ajout2(int a);
};
=============================

Utilisation (je rempli un edit box avec une puis l'autre methode) et le resultat est le meme, alors la difference est où ????????

 CTest Test; int res;
// Test.Ajout(2,res);
 res = Test.Ajout2(2);
 m_edit = res;
 UpdateData(false);



gege

mardi 22 novembre 2005 à 12:44:28 | Re : question : passage de parametre et methode avec retour de valeur.

jeromedu94

En effet le résultat est le même mais la manière d'y arriver est différente.

Dans le premier cas, tu transmet la valeur de a et l'adresse de res, dans ce cas la variable intermiédiare b dans ta procédure à la même adresse que res, donc en modifiant b, tu modifies res.

Alors que dans le deuxième cas, tu transmet juste la valeur de a, et res prend la valeur de retour de la fonction.

mardi 22 novembre 2005 à 12:54:14 | Re : question : passage de parametre et methode avec retour de valeur.

gege1024

ok, mais alors c'est simplement l'habitude du programmeur d'utiliser tel ou tel methode, ou alors y a t'il une subtile difference (memoire, rapidité ....)

parce que moi , je me suis rendu compte que j'utilisais tantot la premiere , tantot la deuxieme methode , mais je ne sais pas pourquoi.

gege

mardi 22 novembre 2005 à 19:11:09 | Re : question : passage de parametre et methode avec retour de valeur.

jeromedu94

je saurai pas te dire s'il y a une différence en terme de rapidité, en terme de mémoire ou de rapidité.

Mais si par exemple tu veux créer une fonction qui renvoi plusieurs valeurs, tu peux pas utiliser la méthode 2, dans ce cas tu utilises la méthode 1, en transmettant l'adresse de plusieurs variables ou d'un tableau.
mardi 22 novembre 2005 à 21:51:42 | Re : question : passage de parametre et methode avec retour de valeur.

gege1024

oui je c'est vrai.

ma question etait du "pinaillage".

gege



Cette discussion est classée dans : int, methode, passage, parametre, question


Répondre à ce message

Sujets en rapport avec ce message

passage d'arguments à un programme [ par VolaiL ] J'ai réalisé un programme en C qui necessite le passage de 2 arguments lors de l'appel de l'executable.( ex : nom_du_prog arg1 arg2 )Pas de probleme, Question simple sur les tableaux [ par LordBob ] Bonjours a tous,pourquoi quand j'écris le code ci-dessous:#include int main(){ int i; char tab[6] = "bonjour"; for (i passage de parametre [ par Ricool ] Salut a tousVoila, j'ai un pb de passage de parametre.J'ai une fonction qui allou un pointeur de typetypedef struct { char type; /* type de URGENT SVP::une question sur le methode autoredraw en vb [ par cheby ] SALUT TOUT LE MONDEj'aurais une peite question sur la methode autoredraw en vb comment peut on la traduire en c sous forme d'une fonction?merci d'avan passage de paramètres [ par mfroment ] Voila le problème!j'ai une fonction définie comme suit:Matrice(int,int,double,...);le ... permet apperement de saisir autant de paramètres que l'on ve passage de parametre [ par imasazz ] salut , j'ai un probleme de passage de parametre ,je voudrai passer une structure que j'ai créée en paramètres à une fonction .... alors comment faire Question de pointeurs [ par daivil ] Bonsoir,Alors admettons un type :typedef struct{ int nbPommes; int nbBananes;} T_panier;//Admettons ensuite une fonction mainint main(void){ T_panier [urgent] methode en parametre d'une fonction [ par leprov ] salut a tous.bon voila mon probleme. j'ai une classe et je voudrais passer une de ses fonctions membre en parametre de fonction pour effectuer différe Instance de classe (question stupide) [ par CyberP ] Une petite question idiote que je ne me suis jamais posée (je n'ai jamais rencontré ce problème auparavant d'ailleurs) J'ai ce code : struct Objet { Simple Question [ par tibob51 ] Bonjour a tous,le code suivant:int *i;for (int a=0;a{i=new int;...}me créera un nouveau int et detruira l'ancien.....?Je suis plus sûr<B


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales