Article View: be.comp.programming
Article #1725Re: Rare C++ fout (std::map)
From: Aquila
Date: Thu, 16 Dec 2004 13:27
Date: Thu, 16 Dec 2004 13:27
30 lines
2553 bytes
2553 bytes
dichtertje wrote:
>> Dus heb ik:
>> bool PossibleState::operator<(const PossibleState & state) const{
>> return (getPos().x < state.getPos().x) || (getPos().y <
>> state.getPos().y); }
>> Is dat ook verkeerd met die strict weak ordering? Ik heb eens gekeken op
>> <http://www.sgi.com/tech/stl/StrictWeakOrdering.html> en dan zou ik niet
>> voldoen aan antisymmetrie: (4,4) < (4,4) is false maar het omgekeerde is
>> niet true zoals ge?ist...
>>
>> Bedankt voor uw hulp!
>
> Die antisymmetrie geldt enkel voor over verschillende waarden, als ze
> gelijk zijn geldt de irreflixitiviteitsregel.
>
> Ik heb de oorspronkelijke code niet bekeken, maar bovenstaande operator<
> kan heel onverwachte resultaten geven. Immers maps werken met
> equivalentie en niet met gelijkheid en met jouw operato< is (2,4) en
> (2,3) equivalent, en dus als je zoekt naar (2,4) kun je een iterator
> naar (2,3) terugkrijgen.
> Ik kan niet oordelen of dit in uw geval een praktisch probleem is of
> niet.
Dat was het dus wel, bedankt voor de inspiratie! Ik heb een implementatie
gemaakt die prioriteit geeft aan x en dan op y sorteert, dat werkt perfect.
Allen bedankt voor uw hulp!
--
"May the source be with you"
Technical Details
Message-ID:
<0K-dnZgSppOkEFzcRVnyjA@scarlet.biz>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local1.nntp.dca.giganews.com!nntp.scarlet.biz!news.scarlet.biz.POSTED!not-for-mailReferences:
<ZJKdne45LpA4YyLcRVnyvA@scarlet.biz> <cpp19f$ipt$1@netlx020.civ.utwente.nl> <AsednWZ6OKynk13cRVnyuw@scarlet.biz> <1103146531.65374@seven.kulnet.kuleuven.ac.be>Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,f50cab2f57916087 X-Google-Attributes: gidfcea4,public X-Google-Language: DUTCH,ASCII-7-bit Path: arc1-ca.pugleaf.net!g2news1.google.com!news4.google.com!news.glorb.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local1.nntp.dca.giganews.com!nntp.scarlet.biz!news.scarlet.biz.POSTED!not-for-mail NNTP-Posting-Date: Thu, 16 Dec 2004 07:27:21 -0600 From: Aquila <braempje@netscape.net> Subject: Re: Rare C++ fout (std::map) Newsgroups: be.comp.programming Date: Thu, 16 Dec 2004 14:27:21 +0100 References: <ZJKdne45LpA4YyLcRVnyvA@scarlet.biz> <cpp19f$ipt$1@netlx020.civ.utwente.nl> <AsednWZ6OKynk13cRVnyuw@scarlet.biz> <1103146531.65374@seven.kulnet.kuleuven.ac.be> User-Agent: KNode/0.8.1 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7Bit Message-ID: <0K-dnZgSppOkEFzcRVnyjA@scarlet.biz> Lines: 30 NNTP-Posting-Host: 81.11.172.42 X-Trace: sv3-21m2Ijj1YyqLCzOvkeJM5JH8To7qXQzKTDk1xVwhOlexolhClRUu4CQMLCU7TFLg2xLUoVPFUe67Evt!MUW/OwQwz5Ut6Q4v14cch5Is3K4ZHe9RSx4s4UQNA/5zVOLMpRUeI8rGlIJX/3xk1VkyX+3Hfw== X-Complaints-To: abuse@scarlet.be X-DMCA-Complaints-To: abuse@scarlet.biz X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.22