Article View: fr.comp.os.ms-windows.programmation
Article #94Re: Que peux-t-on mettre dans une DLL ?
From: James Kanze
Date: Fri, 31 Jul 2009 07:13
Date: Fri, 31 Jul 2009 07:13
44 lines
3962 bytes
3962 bytes
On Jul 30, 10:09 pm, Falk Tannhäuser <tannhauser86549s...@free.fr>
wrote:
> James Kanze schrieb:
> > On Jul 30, 12:27 am, Falk Tannhäuser <tannhauser86549s...@free.fr>
> >> // Find global character statistics and key length
> >> std::map<unsigned char, unsigned> stat;
> > Seulement curiosité, mais est-ce qu'il y a une raison pour
> > std::map, plutôt que :
> > std::vector< unsigned > stat( UCHAR_MAX + 1 ) :
> > (ce que j'aurais fait). En fin de compte, ton « indice »,
> > c'est bien un petit entier non-négatif, ce qui correspond à
> > l'utilisation classique de vector (voire même un tableau de
> > type C
> Non, pas de raison particulière, sauf que je n'avais pas envie
> de me prendre le choux :-) La version avec std::vector ou
> tableau doit bien être plus performant (moins d'allocations
> dynamiques, temps d'accès O(1) contrairement à O(log N) pour
> std::map) et prendre moins de mémoire, mais vu la faible
> quantité de données à traiter la différence reste
> imperceptible.
Je ne pensais pas particulièrement à la performance. C'est juste
qu'en mon esprit, la collection par défaut, c'est std::vector.
Je ne m'en écarte que s'il y une raison : le fait que l'indice
ne soit pas un type entier, par exemple, ou que les indices
potentielles sont telles que ça risque de dépasser une
utilisation raisonable de la mémoire (p.e. des numéros de
sécurité sociale, traités comme des entiers).
Mais c'est peut-être simplement une vieille habitude de ma
part. Dans le cas qui nous intéresse, les indices sont des
caractères, qui conceptuellement ne sont pas des entiers.
Seulement, j'ai tellement travaillé dans l'informatique de bas
niveau que je n'arrive pas toujours à en faire l'abstraction ;
je n'oublie jamais que les caractères sont des entiers.
--
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
Technical Details
Message-ID:
<7c6b6fa3-4e03-476d-a03e-990fa3f1c7cd@k1g2000yqf.googlegroups.com>Path:
arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!k1g2000yqf.googlegroups.com!not-for-mailReferences:
<4a414044$0$27809$426a74cc@news.free.fr> <4a41dfa0$0$12660$ba4acef3@news.orange.fr> <4a41e381$0$17074$ba4acef3@news.orange.fr> <h1tl7d$h5o$1@shakotay.alphanet.ch> <4a473818$0$12615$ba4acef3@news.orange.fr> <h28qcu$r8p$1@shakotay.alphanet.ch> <4a48874c$0$12636$ba4acef3@news.orange.fr> <4a66b6b5$0$414$426a34cc@news.free.fr> <4a670f87$0$12628$ba4acef3@news.orange.fr> <4a70ccca$0$413$426a74cc@news.free.fr> <ea8cbbe2-5b3a-4101-8bb3-95478d89aebc@26g2000yqk.googlegroups.com> <4a71fdfd$0$27785$426a74cc@news.free.fr>Show Full Headers
Complete Article Headers
X-Google-Thread: 5a994809eb,6c71bd8d893a4df6 X-Google-Attributes: gid5a994809eb,public,usenet X-Google-NewGroupId: yes X-Google-Language: FRENCH,ASCII Path: arc1-ca.pugleaf.net!g2news2.google.com!postnews.google.com!k1g2000yqf.googlegroups.com!not-for-mail From: James Kanze <james.kanze@gmail.com> Newsgroups: fr.comp.os.ms-windows.programmation,fr.comp.lang.c++ Subject: Re: Que peux-t-on mettre dans une DLL ? Date: Fri, 31 Jul 2009 00:13:42 -0700 (PDT) Organization: http://groups.google.com Lines: 44 Message-ID: <7c6b6fa3-4e03-476d-a03e-990fa3f1c7cd@k1g2000yqf.googlegroups.com> References: <4a414044$0$27809$426a74cc@news.free.fr> <4a41dfa0$0$12660$ba4acef3@news.orange.fr> <4a41e381$0$17074$ba4acef3@news.orange.fr> <h1tl7d$h5o$1@shakotay.alphanet.ch> <4a473818$0$12615$ba4acef3@news.orange.fr> <h28qcu$r8p$1@shakotay.alphanet.ch> <4a48874c$0$12636$ba4acef3@news.orange.fr> <4a66b6b5$0$414$426a34cc@news.free.fr> <4a670f87$0$12628$ba4acef3@news.orange.fr> <4a70ccca$0$413$426a74cc@news.free.fr> <ea8cbbe2-5b3a-4101-8bb3-95478d89aebc@26g2000yqk.googlegroups.com> <4a71fdfd$0$27785$426a74cc@news.free.fr> NNTP-Posting-Host: 62.160.54.162 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1249024422 8721 127.0.0.1 (31 Jul 2009 07:13:42 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Fri, 31 Jul 2009 07:13:42 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: k1g2000yqf.googlegroups.com; posting-host=62.160.54.162; posting-account=1W_PtwoAAAA1QoMcl2Z5P6j-DNc8HR3W User-Agent: G2/1.0 X-HTTP-Via: 1.1 paisc003:8181 (IWSS) X-HTTP-UserAgent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.9.0.10) Gecko/2009042523 Ubuntu/9.04 (jaunty) Firefox/3.0.10,gzip(gfe),gzip(gfe)