Article View: be.comp.programming
Article #4823Re: probleempje met OnKeyDown() in vc++ 6.0
From: Roel Schroeven
Date: Mon, 14 Jul 2003 19:07
Date: Mon, 14 Jul 2003 19:07
46 lines
2704 bytes
2704 bytes
Haplo wrote:
> In article <vNwQa.10678$Yf3.823463036@hestia.telenet-ops.be>,
> slavearc@pandora.be says...
>
><knip>
>
>> if(lsChar = 'X') <- Hier is het probleem
>> {
> Om zulke fouten te vermijden draai je best zulke vergelijkingen om :
> Voorbeeld : if ('X' == lsChar)
> Als je nu 1 = teken zet ipv 2 krijg je een compileerfout, wat
> gemakkelijker te verbeteren is als een logische fout.
Dat is iets wat dikwijls aangeraden wordt, maar ik doe dat liever niet.
Voor een stuk omdat ik dat minder leesbaar vind, hoewel dat grotendeels
een kwestie van gewoonte is.
Maar vooral omdat ik het gevoel heb dat dat aanzet tot slordiger
gebruik: je denkt er minder over na, "de compiler zal het toch wel
zien". Veel vergelijkingen zijn echter vergelijkingen tussen twee
variabelen, en dan zal bovenstaand trucje niet helpen. De compiler ziet
niet dat er iets mis is.
Ik denk er liever aan elke keer ik een if-statement schrijf: ah ja,
oppassen, geen = maar ==. Ik zal niet zeggen dat ik de fout nog nooit
gemaakt heb, maar het is toch wel hoogst uitzonderlijk -- pakweg een
keer of twee � drie op vijf jaar tijd.
In dit specifieke geval zou ik trouwens een switch-statement gebruiken
i.p.v. if-else if:
switch (nChar)
{
case 'A':
/* ... */
break;
case 'B':
/* ... */
break;
/* ... */
default:
/* ... */
break;
}
--
"Codito ergo sum"
Roel Schroeven
Technical Details
Message-ID:
<xbDQa.8316$F92.1212@afrodite.telenet-ops.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-09!supernews.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!proxad.net!proxad.net!213.253.16.105.MISMATCH!mephistopheles.news.clara.net!news.clara.net!btnet-peer!btnet!newsfeed.london1.eu.level3.net!level3eu!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mailReferences:
<vNwQa.10678$Yf3.823463036@hestia.telenet-ops.be> <MPG.197d126aa6eb9dc998968c@news.telenet.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII X-Google-Thread: fcea4,2d3c3f0d196b914b X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-07-14 12:08:04 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-09!supernews.com!news.maxwell.syr.edu!newsfeed.icl.net!newsfeed.fjserv.net!proxad.net!proxad.net!213.253.16.105.MISMATCH!mephistopheles.news.clara.net!news.clara.net!btnet-peer!btnet!newsfeed.london1.eu.level3.net!level3eu!ossa.telenet-ops.be!afrodite.telenet-ops.be.POSTED!not-for-mail Newsgroups: be.comp.programming From: Roel Schroeven <j4nff5m02@sneakemail.com> Subject: Re: probleempje met OnKeyDown() in vc++ 6.0 References: <vNwQa.10678$Yf3.823463036@hestia.telenet-ops.be> <MPG.197d126aa6eb9dc998968c@news.telenet.be> Organization: http://www.catb.org/~esr/faqs/smart-questions.html Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit User-Agent: slrn/0.9.7.4 (Linux) Lines: 46 Message-ID: <xbDQa.8316$F92.1212@afrodite.telenet-ops.be> Date: Mon, 14 Jul 2003 19:07:09 GMT NNTP-Posting-Host: 81.164.36.61 X-Complaints-To: abuse@telenet.be X-Trace: afrodite.telenet-ops.be 1058209629 81.164.36.61 (Mon, 14 Jul 2003 21:07:09 MET DST) NNTP-Posting-Date: Mon, 14 Jul 2003 21:07:09 MET DST