| |||||
Page : 1 2 Page Précédente | |
| Auteur | Sujet : template et functor |
Publicité | Posté le 06-02-2009 à 00:43:24 ![]() ![]() |
Joel F Real men use unique_ptr | si sauf que ton ap^pel est faux :
|
weblook$$ | Polymorhpic (...) je connaissais pas , merci |
weblook$$ | |
Joel F Real men use unique_ptr | un PFO est un foncteur qui supporte le protocole result_of. Il prend des arguments template et sait seul calculer le type de retour afferent.
|
weblook$$ | merde je comprends rien à ton code lol |
weblook$$ | ça sert à koi ce bout de code :
|
weblook$$ | non en faite c'est le Addpointer qu'est ce qu'il vient foutre ici |
Joel F Real men use unique_ptr | la structure interne result permet de supporté le protocole result_of : Il prend un type fonction pr transferer les information pr calculer le type de retour du foncteur. Maintenant ... quel est el type de &t ou T est de type T ??? Message édité par Joel F le 06-02-2009 à 20:59:16 |
weblook$$ | ça compile pas chez moi, d'une le compilo gueule parcequ'il faut mettre typedef typename devant boost::addpointer et le take_adress(T)
|
Publicité | Posté le 06-02-2009 à 22:48:50 ![]() ![]() |
Joel F Real men use unique_ptr | t'as quoi comme compilateur antediluvien, VC6 ? |
weblook$$ | oui j'ai boost d'installer, qui marhe correctement, et j'utilise visual 2008 express |
weblook$$ | ce qui me surprends aussi,c'est que le type de retour typename result<take_adress(T)>::type de la fonction operator() utilise cette fonction avant même qu'elle soit défini, je pensais pas que ça pouvais marcher! Message édité par weblook$$ le 07-02-2009 à 14:37:19 |
weblook$$ | et puis à quoi cela sert d'utiliser result<take_adress(T)> plutot que simplement result<T> étant donné que boost::ad_pointer ne prend que T ?? |
Joel F Real men use unique_ptr | Y a qu'une fonction : operator(), result c'ets une meta-fonction.
|
weblook$$ | bon oui je vais lire un peu plus "profondément" , mais je capte toujours pas pourquoi est ce que le compilo ne veut pas du code. En etnête je mets ça Message édité par weblook$$ le 07-02-2009 à 21:20:14 |
Joel F Real men use unique_ptr | address pas adress |
weblook$$ | oui erreur de frappe sur le forum |
weblook$$ | a non ! lol :$ |
weblook$$ | merci |
Taz bisounours-codeur | Je crois que ce qui déroute, c'est la syntaxe result<take_adress(T)> |
Joel F Real men use unique_ptr | passage d'un type fonction en parametre template |
weblook$$ | mais y a un soucis aussi
Message édité par weblook$$ le 08-02-2009 à 21:55:30 |
Joel F Real men use unique_ptr | ouais peut etre, mais bon, pas dur de completer pour que ça marche à titre d'exercice |
weblook$$ | une autre chose que je comprends pas:
Message cité 1 fois Message édité par weblook$$ le 11-02-2009 à 17:49:42 |
weblook$$ | également :
|
Joel F Real men use unique_ptr |
|
weblook$$ |
Message édité par weblook$$ le 11-02-2009 à 19:11:47 |
Joel F Real men use unique_ptr | non on construit un type qui est :
|
weblook$$ | donc take_adress(T) est équivalent à "take_adress f(T)" , sauf que l'on ne donne pas de nom à la fonction ? |
Joel F Real men use unique_ptr | oui et non, ce qui nous interesse c'ets juste son type |
weblook$$ | que veux donc tu dires par,
|
Joel F Real men use unique_ptr | bah c'ets le type de take_address(T) |
weblook$$ |
Message édité par weblook$$ le 11-02-2009 à 20:19:53 |
Joel F Real men use unique_ptr | oui, t'as pas lu la doc que je t'ai passer.
|
weblook$$ | oui mais j'ai rien capté à la doc : The class template result_of helps determine the type of a call expression. Given an lvalue f of type F and lvalues t1, t2, ..., tN of types T1, T2, ..., TN, respectively, the type result_of<F(T1, T2, ..., TN)>::type defines the result type of the expression f(t1, t2, ...,tN). The implementation permits the type F to be a function pointer, function reference, member function pointer, or class type. When F is a class type with a member type result_type, result_of<F(T1, T2, ..., TN)> is F::result_type. Otherwise, result_of<F(T1, T2, ..., TN)> is F::result<F(T1, T2, ..., TN)>::type when N > 0 or void when N = 0. For additional information about result_of, see the C++ Library Technical Report, N1836, or, for motivation and design rationale, the result_of proposal. Message édité par weblook$$ le 12-02-2009 à 14:14:00 |
weblook$$ | comment est ce que l'expression f(t1, t2, ...,tN) peut avoir un type??? |
Joel F Real men use unique_ptr | c'est un appel de fonction, son result_type est son type de retour qui depend polymorphqiuement des types de ces entrées. Point y a rien de sorcier, c'est les trucs de bases sur le typage des fonctions. |
weblook$$ | bah rien de sorcier rien de sorcier elle est bien bonne celle là!
Message cité 1 fois Message édité par weblook$$ le 12-02-2009 à 18:59:48 |
Un Programmeur |
|
Publicité | Posté le ![]() ![]() |
Page : 1 2 Page Précédente |

| Sujets relatifs | |
|---|---|
| template et version des compilateurs | classe template avec pointeur membre sur la classe |
| template template parameters | template syntaxe |
| précision: template et inline | Probleme de compilation avec les template |
| [Résolu]Passage d'un template non défini entièrement à une fonction | problème sur un template |
| Manipulation d'un nom de template dans une #define-macro | appel d'un template xsl-fo ! |
| Plus de sujets relatifs à : template et functor | |





