πŸš€ go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: be.comp.programming
Article #1709

Re: Rare C++ fout (std::map)

#1709
From: Aquila
Date: Wed, 15 Dec 2004 10:13
23 lines
2316 bytes
Arnold Hendriks wrote:

> Als je je operator bijvoorbeeld als turning < state.turning definieert,
> dan zou de compare wel moeten werken. Nu de compare niet strict is, deugt
> de sortering niet en dat kan best verklaren waarom de find() functie niet
> goed werkt.

Je hebt gelijk, ik had daar een < moeten gebruiken. Nu ben ik er nog niet
want dat was een (domme) vereenvoudiging. Normaal bestaat possiblestate uit
een positie pos, een direction dir en een boolean turning. Maar ik wil dat
die laatste 2 genegeerd worden want dat mag in die map geen verschil maken.
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!
-- 
"May the source be with you"
Technical Details
Message-ID: <AsednWZ6OKynk13cRVnyuw@scarlet.biz>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!newsread.com!newsprint.newsread.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
References: <ZJKdne45LpA4YyLcRVnyvA@scarlet.biz> <cpp19f$ipt$1@netlx020.civ.utwente.nl>

Show Full Headers
Complete Article Headers
X-Google-Thread: fcea4,f50cab2f57916087
X-Google-Attributes: gidfcea4,public
X-Google-Language: DUTCH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!newsread.com!newsprint.newsread.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: Wed, 15 Dec 2004 04:13:14 -0600
From: Aquila <braempje@netscape.net>
Subject: Re: Rare C++ fout (std::map)
Newsgroups: be.comp.programming
Date: Wed, 15 Dec 2004 11:13:14 +0100
References: <ZJKdne45LpA4YyLcRVnyvA@scarlet.biz> <cpp19f$ipt$1@netlx020.civ.utwente.nl>
User-Agent: KNode/0.8.1
MIME-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8Bit
Message-ID: <AsednWZ6OKynk13cRVnyuw@scarlet.biz>
Lines: 23
NNTP-Posting-Host: 81.11.150.5
X-Trace: sv3-X6cP+7OYXb6q5aBhqgHFkECEFs/yaaOiltjUip79rzc8x0fQOZtXEI0162zVjk1LgxQ4ZL5lN6w8O40!XNHiPJ/w0aAgy7gaUVfbBMx1aQFvYB8+mVfyfsfwIADkyEW6IOCR1F77qMcSqfU0mu2ZLAp3
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.20