begin process at 2012 02 12 13:51:11
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Divers

 > 

Overload ou void*


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

Overload ou void*

lundi 11 février 2008 à 17:00:27 | Overload ou void*

CCJ

Membre Club
Salut.
Vaut-il mieu creer une fonction avec comme parametre un pointeur void et traiter chacun des type avec un overload de cette fonction ?

Peutetre y a ti-il quelque chose que j'ai mal compris ... mais théoriquement ca fait la meme chose non?


Si l'informatique été de l'alcool il y aurait des genies partout
lundi 11 février 2008 à 17:22:59 | Re : Overload ou void*
lundi 11 février 2008 à 17:57:35 | Re : Overload ou void*

SAKingdom

Membre Club
Comment veux tu faire la différence entre les types entré via un void * ?
On peut bien sur utiliser un second paramètre qui contiendra le type mais bon...

T'as le choix:
Soit tu fais une fonction qui prend un void * et le type en argument. Dans ce cas, faudra faire un switch case et traiter chaque type. Fera une grosse fonction et des tests seront à faire.

Soit tu fais des fonctions surchargées. Fera une multitude de fonctions mais en object, tout ceci est transparent à l'utilisateur.


C++ (@++)

lundi 11 février 2008 à 17:57:58 | Re : Overload ou void*

DeAtHCrAsH

Deux! Et à trois on s'arrete!

Il y a en effet quelques choses que tu as du mal comprendre. En tout cas ta question n'est pas claire.
Sois plus explicite.

Shell
lundi 11 février 2008 à 18:09:46 | Re : Overload ou void*

SAKingdom

Membre Club
Ah et:
"Peutetre y a ti-il quelque chose que j'ai mal compris ... mais théoriquement ca fait la meme chose non?"
Non ça ne fait pas la même chose du tout.

Petite précision:
Quand je dis, "passer le type", c'est comme ceci:

#define TYPE_CHAR 1
...
int fonc (void *v, int type)
{
    switch(type) {
       case TYPE_CHAR:
          break;
    ...
}

C++ (@++)

mardi 12 février 2008 à 09:47:47 | Re : Overload ou void*

CCJ

Membre Club
Mh ok , en fait je me demandais juste si pour appeler une fonction qui peut avoir a traiter plusieurs type de variables(par exemple une fonction d'addition�11; qui pourrait prendre un float ou un int) il vallait mieu switch le type de variable ou faire un overload sur chaque type , je pense que je vais faire plusieurs overloads. Merci a vous.
mardi 12 février 2008 à 13:13:04 | Re : Overload ou void*

luhtor

Réponse acceptée !
Les templates sont fait pour ca:

template <class T>
T Addition(const T & _p1, const T & _p2)
{
return (_p1 + _p2);
}

int main(...)
{
    int result = Addition<int>(4, 8);
    float value = Addition<float>(2.0f, 3.14f);
return 0;
}
mardi 12 février 2008 à 15:39:01 | Re : Overload ou void*

CCJ

Membre Club
En voila une reponse qu'elle me plait !
Merci beaucoup je vais chercher de la doc a ce propos .

Si l'informatique été de l'alcool il y aurait des genies partout


Cette discussion est classée dans : fonction, chose, void, overload


Répondre à ce message

Sujets en rapport avec ce message

Pb CreateThreadddd !!!!!!!!!!! [ par neub ] Salut à tous, j'ecris un module de visionnement d'image etje souhaiterai pouvoir stopper ma fonction OnPlay au moment voulu mais j'ai un pb a la creat utiliser une fonction d'une lib C dans une classe c++ [ par snook ] Bonjour,j'aimerais savoir comment doit on proceder pourappeler une fonction d'une librairie ecrite en C dansmon programme C++?exemple: ma lib possede Pointeur vers une fonction dans une classe ... [ par MoDDiB ] Supposons que j'ai la fonctionvoid Fonction(int test,int t);appartenant a la classe Cclass.Quelle est la syntaxe pour creer un pointeur vers cette fon Pointeur sur fonction envoyé par dll [ par MoDDiB ] Voila ce que j'ai fais mais ca ne marche pas :Dll :#include BOOL APIENTRY DllMain(HANDLE hModule,DWORD ul_reason_for_call,LPVOID lpReserved){ retu CDialog + Sockey ? [ par mickeydisn ] je suis entrin de realiser une application un a serveur Socket en Consol . L'application console pas de PB . Le clien j'ai cree une forme avec un edit pointeur static sur fonction :) [ par luhtor ] Certain reconnaitront surement le tutoriel en question. J'ai rajouté quelques trucs au gestionnaire d'exception, mais je bloque sur le point suivant:J fonction signal en C++ sous unix (g++) [ par seblegaulois ] Bonjour,En c, j'arrive à faire :void toto(int) {...}...signal(SIGUSR2,toto);Et en C++, je n'y arrive pas, j'ai fait :class toto {...void toto(int) { . répeter une action /fonction ?? [ par hansmeier ] //******************************************************* #include "stdafx.h" int APIENTRY WinMain(HINSTANCE hInstance, Probleme Argument void* d'une fonction [ par Steph115 ] Bonjour,Pour info je travaille sous Linux en C++ j'ai une fonction definie comme ca : [Code]int ServeurSocket::emmetreSocket(void* trame, int taille){ Utilisation d'un pointeur de fonction membre [ par cyrcocq ] Bonjour,J'ai déjà discuté de ça ailleurs, on m'a conseillé d'autres méthodes, mais imaginons une classe contenant un ensemble de fonction accessibles


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 5,725 sec (3)

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