christouilhe
Messages postés7Date d'inscriptiondimanche 8 février 2004StatutMembreDernière intervention16 septembre 2005
-
17 mars 2004 à 16:45
dardanil
Messages postés1Date d'inscriptionmercredi 31 mars 2004StatutMembreDernière intervention23 mai 2005
-
23 mai 2005 à 14:38
Bonjour à vous tous.
J'ai une question à vous poser ...
Il se trouve que je dois retranscrire un programme C++ en Java, mais il y a une fonction que je ne comprend même pas en C++, la voici :
#define DEFAULT_ITERATION 200
template <class T>
class Integrateur {
private:
int iteration;
public:
virtual float integre (T* object, float (T::*methode) (int, float), int n, float a, float b)
{
float x, tmp, sum, step;
int i;
step = (b-a) / iteration;
x = a; for (i 0, sum 0.0 ; i < n; i++)
{
tmp = 0.5 * ((object->*methode)(n, x) + (object->*methode)(n, x+step)) * step;
x += step;
sum += tmp;
}
return sum;
}
};
Je ne comprends pas cette histoire de "float (T::*methode) (int, float)" ... Quelqu'un pourrais m'aider à le comprendre et à le coder en JAVA ? SVP ... Pitié ...
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 17 mars 2004 à 17:17
je sais pas si sur le forum java on sait ce qu'est un pointeur sur methode membre :s
float (T::*methode) (int, float) ca ve dir que methode est un pointeur sur une methode de la class T qui prend en parametre un int et un float et qui retourne un float
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 17 mars 2004 à 18:03
par contre ca risque d'être difficile de retranscrire ca car je ne suis pas sur que Java supporte actuellement le templates, et pareil pour les pointeurs de fonctions
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 17 mars 2004 à 20:03
en java, les objet sont de references (tout est dynamique), donc a priori pas besoin d'operateur explicite
tu pourra jamais faire de pointeur sur fonction en java (du moin ce que je sais) et je n'ai jamais entendu parler d'operateur de references en java
c'est la qu'on se rend compte a quel point le c++ est un language evoluer
cs_djl
Messages postés3011Date d'inscriptionjeudi 26 septembre 2002StatutMembreDernière intervention27 novembre 20047 19 mars 2004 à 17:41
ben comme c'est dit dans ton lien, en java pas de template, ni inline, ni pointeur sur methode, ni heritage multiple,ni surcharge d'operateurs, je connai pas mais j'imagine que la liste doit etre plus longue...