Je te conseille le Vandevoorde et Josuttis : il décrit en détail ce genre de chose, et c'est extrèmement bien écrit. Dans ce cas-ci, grosso modo : [...]
merci pour toutes tes explications (à Fabien également), c'est beaucoup plus clair avec. un peu de lecture, V&J, serait bienvenue en effet.
Sylvain.
James Kanze wrote on 09/05/2008 10:53:
Je te conseille le Vandevoorde et Josuttis : il décrit en
détail ce genre de chose, et c'est extrèmement bien écrit. Dans
ce cas-ci, grosso modo : [...]
merci pour toutes tes explications (à Fabien également),
c'est beaucoup plus clair avec. un peu de lecture, V&J,
serait bienvenue en effet.
Je te conseille le Vandevoorde et Josuttis : il décrit en détail ce genre de chose, et c'est extrèmement bien écrit. Dans ce cas-ci, grosso modo : [...]
merci pour toutes tes explications (à Fabien également), c'est beaucoup plus clair avec. un peu de lecture, V&J, serait bienvenue en effet.
Sylvain.
espie
In article , James Kanze wrote:
Je te conseille le Vandevoorde et Josuttis : il décrit en détail ce genre de chose, et c'est extrèmement bien écrit. Dans ce cas-ci, grosso modo :
La principe de base, c'est de se servir de la résolution du surcharge des fonctions (dont des fonctions templatées) pour choisir selon les caractèristiques du type. Mais évidemment, on ne veut pas réelement appeler les fonctions, ce qui de toute façon ne se fera que lors de l'exécution. L'astuce, ici, c'est de se servir de sizeof pour obtenir une constante de compilation qui dépend de la résolution du surcharge : sizeof( func(...) ) vaut la taille du type du rétour de la fonction, et le compilateur effectue bien la résolution du surcharge sans jamais appeler la fonction.
Tiens, moi j'avais lu ca chez Alexandrescu, qui decrit aussi tres en detail ce genre de choses, et pas mal d'autres trucs tres space.
La moquette de Vandevoorde et Josuttis est de meme qualite ? pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
In article <0da8bd52-a6ba-4da9-8a7e-6a803a0cea16@a23g2000hsc.googlegroups.com>,
James Kanze <james.kanze@gmail.com> wrote:
Je te conseille le Vandevoorde et Josuttis : il décrit en
détail ce genre de chose, et c'est extrèmement bien écrit. Dans
ce cas-ci, grosso modo :
La principe de base, c'est de se servir de la résolution du
surcharge des fonctions (dont des fonctions templatées) pour
choisir selon les caractèristiques du type. Mais évidemment, on
ne veut pas réelement appeler les fonctions, ce qui de toute
façon ne se fera que lors de l'exécution. L'astuce, ici, c'est
de se servir de sizeof pour obtenir une constante de compilation
qui dépend de la résolution du surcharge : sizeof( func(...) )
vaut la taille du type du rétour de la fonction, et le
compilateur effectue bien la résolution du surcharge sans jamais
appeler la fonction.
Tiens, moi j'avais lu ca chez Alexandrescu, qui decrit aussi tres en
detail ce genre de choses, et pas mal d'autres trucs tres space.
La moquette de Vandevoorde et Josuttis est de meme qualite ? pour pondre
des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Je te conseille le Vandevoorde et Josuttis : il décrit en détail ce genre de chose, et c'est extrèmement bien écrit. Dans ce cas-ci, grosso modo :
La principe de base, c'est de se servir de la résolution du surcharge des fonctions (dont des fonctions templatées) pour choisir selon les caractèristiques du type. Mais évidemment, on ne veut pas réelement appeler les fonctions, ce qui de toute façon ne se fera que lors de l'exécution. L'astuce, ici, c'est de se servir de sizeof pour obtenir une constante de compilation qui dépend de la résolution du surcharge : sizeof( func(...) ) vaut la taille du type du rétour de la fonction, et le compilateur effectue bien la résolution du surcharge sans jamais appeler la fonction.
Tiens, moi j'avais lu ca chez Alexandrescu, qui decrit aussi tres en detail ce genre de choses, et pas mal d'autres trucs tres space.
La moquette de Vandevoorde et Josuttis est de meme qualite ? pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Fabien LE LEZ
On Fri, 9 May 2008 10:48:58 +0000 (UTC), (Marc Espie):
pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Et encore, t'as rien vu : le chapitre 2 est un recensement de quelques petites techniques de base pour construire les choses sérieuses à partir du chapitre 3.
On Fri, 9 May 2008 10:48:58 +0000 (UTC), espie@lain.home (Marc Espie):
pour pondre
des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Et encore, t'as rien vu : le chapitre 2 est un recensement de quelques
petites techniques de base pour construire les choses sérieuses à
partir du chapitre 3.
On Fri, 9 May 2008 10:48:58 +0000 (UTC), (Marc Espie):
pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Et encore, t'as rien vu : le chapitre 2 est un recensement de quelques petites techniques de base pour construire les choses sérieuses à partir du chapitre 3.
Fabien LE LEZ
On Fri, 09 May 2008 11:10:33 +0200, jeremie fouche :
En fait, je pensais qu'on pouvait faire un truc dans le genre sans passer par de gros trucs.
Tu remarqueras que la modification dans ton code se résume à une seule ligne, relativement compréhensible :
Effectivement, l'implémentation (dans les .h) est un peu plus compliquée, mais nettement plus simple et plus courte que celle d'un truc aussi basique que std::string.
On Fri, 09 May 2008 11:10:33 +0200, jeremie fouche <jfouche@voila.fr>:
En fait, je pensais qu'on pouvait faire un truc dans le genre sans
passer par de gros trucs.
Tu remarqueras que la modification dans ton code se résume à une seule
ligne, relativement compréhensible :
Effectivement, l'implémentation (dans les .h) est un peu plus
compliquée, mais nettement plus simple et plus courte que celle d'un
truc aussi basique que std::string.
Effectivement, l'implémentation (dans les .h) est un peu plus compliquée, mais nettement plus simple et plus courte que celle d'un truc aussi basique que std::string.
espie
In article , Fabien LE LEZ wrote:
On Fri, 9 May 2008 10:48:58 +0000 (UTC), (Marc Espie):
pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Et encore, t'as rien vu : le chapitre 2 est un recensement de quelques petites techniques de base pour construire les choses sérieuses à partir du chapitre 3.
Faudra que tu prennes des cours de lecture de posts, hein. J'ai lu tout le bouquin d'Alexandrescu.
In article <n5q8249lo38m9g3j5q03gc1mt1hmv12j6u@4ax.com>,
Fabien LE LEZ <usenet15@x.edulang.com> wrote:
On Fri, 9 May 2008 10:48:58 +0000 (UTC), espie@lain.home (Marc Espie):
pour pondre
des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Et encore, t'as rien vu : le chapitre 2 est un recensement de quelques
petites techniques de base pour construire les choses sérieuses à
partir du chapitre 3.
Faudra que tu prennes des cours de lecture de posts, hein. J'ai lu tout
le bouquin d'Alexandrescu.
On Fri, 9 May 2008 10:48:58 +0000 (UTC), (Marc Espie):
pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Et encore, t'as rien vu : le chapitre 2 est un recensement de quelques petites techniques de base pour construire les choses sérieuses à partir du chapitre 3.
Faudra que tu prennes des cours de lecture de posts, hein. J'ai lu tout le bouquin d'Alexandrescu.
La moquette deVandevoordeet Josuttis est de meme qualite ? pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetiqu e...
Non, c'est du parquet chez nous, mais le bois exotique c'est interessant aussi... ;-)
David
Fabien LE LEZ
On 09 May 2008 15:00:15 -0500, Gabriel Dos Reis :
Je crois que Fabien voulait dire qu'il a lu le chapitre 2, et qu'il est en train de lire le chapitre 3 ;-}
Non, je faisais référence au début de la discussion. Ou plutôt, je croyais à tort que Marc faisait référence au début de la discussion. Enfin bon, comme d'hab', j'ai répondu à un message sans le lire :-/
On 09 May 2008 15:00:15 -0500, Gabriel Dos Reis <gdr@cs.tamu.edu>:
Je crois que Fabien voulait dire qu'il a lu le chapitre 2, et qu'il
est en train de lire le chapitre 3 ;-}
Non, je faisais référence au début de la discussion. Ou plutôt, je
croyais à tort que Marc faisait référence au début de la discussion.
Enfin bon, comme d'hab', j'ai répondu à un message sans le lire :-/
Je crois que Fabien voulait dire qu'il a lu le chapitre 2, et qu'il est en train de lire le chapitre 3 ;-}
Non, je faisais référence au début de la discussion. Ou plutôt, je croyais à tort que Marc faisait référence au début de la discussion. Enfin bon, comme d'hab', j'ai répondu à un message sans le lire :-/
Gabriel Dos Reis
writes:
| On May 9, 6:48 am, (Marc Espie) wrote: | [...] | > La moquette deVandevoordeet Josuttis est de meme qualite ? pour pondre | > des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique... | | Non, c'est du parquet chez nous, mais le bois exotique c'est | interessant aussi... ;-) | | David
Il faudrait que tu en ramènes à Sophia Antipolis, le mois prochain -- cela pourrait aider après des journées tendues :-).
-- Gaby
vandevoorde@gmail.com writes:
| On May 9, 6:48 am, es...@lain.home (Marc Espie) wrote:
| [...]
| > La moquette deVandevoordeet Josuttis est de meme qualite ? pour pondre
| > des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
|
| Non, c'est du parquet chez nous, mais le bois exotique c'est
| interessant aussi... ;-)
|
| David
Il faudrait que tu en ramènes à Sophia Antipolis, le mois prochain --
cela pourrait aider après des journées tendues :-).
| On May 9, 6:48 am, (Marc Espie) wrote: | [...] | > La moquette deVandevoordeet Josuttis est de meme qualite ? pour pondre | > des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique... | | Non, c'est du parquet chez nous, mais le bois exotique c'est | interessant aussi... ;-) | | David
Il faudrait que tu en ramènes à Sophia Antipolis, le mois prochain -- cela pourrait aider après des journées tendues :-).
-- Gaby
James Kanze
On 9 mai, 12:48, (Marc Espie) wrote:
In article , James Kanze wrote:
Je te conseille le Vandevoorde et Josuttis : il décrit en détail ce genre de chose, et c'est extrèmement bien écrit. Dans ce cas-ci, grosso modo :
La principe de base, c'est de se servir de la résolution du surcharge des fonctions (dont des fonctions templatées) pour choisir selon les caractèristiques du type. Mais évidemment, on ne veut pas réelement appeler les fonctions, ce qui de toute façon ne se fera que lors de l'exécution. L'astuce, ici, c'est de se servir de sizeof pour obtenir une constante de compilation qui dépend de la résolution du surcharge : sizeof( func(...) ) vaut la taille du type du rétour de la fonction, et le compilateur effectue bien la résolution du surcharge sans jamais appeler la fonction.
Tiens, moi j'avais lu ca chez Alexandrescu, qui decrit aussi tres en detail ce genre de choses, et pas mal d'autres trucs tres space.
La moquette de Vandevoorde et Josuttis est de meme qualite ? pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Je ne peux pas dire ; je n'ai jamais lu Alexandrescu. A priori, d'après ces articles dans les news et dans des journaux, il me donnait l'impression de s'amuser, plutôt que d'essayer des choses pratiques et utilisables. Le Vandevoorde et Josuttis explique les détails de tous ce qui concerne les templates -- j'avoue qu'il y avait beaucoup que je n'avais pas compris avant de l'avoir lu. Je y ai trouvé une bonne équilibre entre le théorique, et ce qui est peut-être possible, et la pratique, c-à-d ce dont on peut réelement se servir. Et comme j'ai dit, c'est exceptionnellement bien écrit.
-- James Kanze (GABI Software) email: Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
On 9 mai, 12:48, es...@lain.home (Marc Espie) wrote:
In article
<0da8bd52-a6ba-4da9-8a7e-6a803a0ce...@a23g2000hsc.googlegroups.com>,
James Kanze <james.ka...@gmail.com> wrote:
Je te conseille le Vandevoorde et Josuttis : il décrit en
détail ce genre de chose, et c'est extrèmement bien écrit. Dans
ce cas-ci, grosso modo :
La principe de base, c'est de se servir de la résolution du
surcharge des fonctions (dont des fonctions templatées) pour
choisir selon les caractèristiques du type. Mais évidemment, on
ne veut pas réelement appeler les fonctions, ce qui de toute
façon ne se fera que lors de l'exécution. L'astuce, ici, c'est
de se servir de sizeof pour obtenir une constante de compilation
qui dépend de la résolution du surcharge : sizeof( func(...) )
vaut la taille du type du rétour de la fonction, et le
compilateur effectue bien la résolution du surcharge sans jamais
appeler la fonction.
Tiens, moi j'avais lu ca chez Alexandrescu, qui decrit aussi
tres en detail ce genre de choses, et pas mal d'autres trucs
tres space.
La moquette de Vandevoorde et Josuttis est de meme qualite ?
pour pondre des trucs pareils, c'est clair qu'Alexandrescu
fume du tres bon synthetique...
Je ne peux pas dire ; je n'ai jamais lu Alexandrescu. A priori,
d'après ces articles dans les news et dans des journaux, il me
donnait l'impression de s'amuser, plutôt que d'essayer des
choses pratiques et utilisables. Le Vandevoorde et Josuttis
explique les détails de tous ce qui concerne les templates --
j'avoue qu'il y avait beaucoup que je n'avais pas compris avant
de l'avoir lu. Je y ai trouvé une bonne équilibre entre le
théorique, et ce qui est peut-être possible, et la pratique,
c-à-d ce dont on peut réelement se servir. Et comme j'ai dit,
c'est exceptionnellement bien écrit.
--
James Kanze (GABI Software) email:james.kanze@gmail.com
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Je te conseille le Vandevoorde et Josuttis : il décrit en détail ce genre de chose, et c'est extrèmement bien écrit. Dans ce cas-ci, grosso modo :
La principe de base, c'est de se servir de la résolution du surcharge des fonctions (dont des fonctions templatées) pour choisir selon les caractèristiques du type. Mais évidemment, on ne veut pas réelement appeler les fonctions, ce qui de toute façon ne se fera que lors de l'exécution. L'astuce, ici, c'est de se servir de sizeof pour obtenir une constante de compilation qui dépend de la résolution du surcharge : sizeof( func(...) ) vaut la taille du type du rétour de la fonction, et le compilateur effectue bien la résolution du surcharge sans jamais appeler la fonction.
Tiens, moi j'avais lu ca chez Alexandrescu, qui decrit aussi tres en detail ce genre de choses, et pas mal d'autres trucs tres space.
La moquette de Vandevoorde et Josuttis est de meme qualite ? pour pondre des trucs pareils, c'est clair qu'Alexandrescu fume du tres bon synthetique...
Je ne peux pas dire ; je n'ai jamais lu Alexandrescu. A priori, d'après ces articles dans les news et dans des journaux, il me donnait l'impression de s'amuser, plutôt que d'essayer des choses pratiques et utilisables. Le Vandevoorde et Josuttis explique les détails de tous ce qui concerne les templates -- j'avoue qu'il y avait beaucoup que je n'avais pas compris avant de l'avoir lu. Je y ai trouvé une bonne équilibre entre le théorique, et ce qui est peut-être possible, et la pratique, c-à-d ce dont on peut réelement se servir. Et comme j'ai dit, c'est exceptionnellement bien écrit.
-- James Kanze (GABI Software) email: Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34