Article View: nl.comp.programmeren
Article #220Re: Lijnen tellen van een project
From: moi
Date: Mon, 31 Jan 2005 18:30
Date: Mon, 31 Jan 2005 18:30
63 lines
3689 bytes
3689 bytes
Johan Wevers wrote:
> Sjoerd A. Schreuder <sa_schreuder@wanadoo.nl> wrote:
>
>
Even gewacht... Toch maar bijten!
>>Een boel C compilers zijn ook C++ compilers. En in C++
>>is (void*)0 geen goede waarde voor NULL, omdat een (void*)
>>niet omgezet mag worden in b.v. een (char*). C++ heeft immers
>>een strictere type-checking dan C.
>
>
Onzinnig argument. Wat die compiler-fabrikanten doen, moeten
zij weten. (C != C++) heet dat. Het zijn verschillende talen met
verschillende regels. Als ze de compiler combineren met een broodrooster
is dat ook nog geen vrijbrief voor warmere objects.
Dat van de typechecking is ook niet waar, althans voor ANSII-C.
( signed als default type vooral voor char zal wel het enige verschil
kunnen zijn, maar ik ken geen C++)
> Hmmm. Een void* kun je toch casten naar elk ander soort pointer,
> ook in C++? Ik heb dat soort constructies vaak genoeg gebruikt
> (void* casten naar een klasse naar keuze).
>
>
>>Dat is handig in de volgende situatie:
>>
>>void foo(long);
>>void foo(void*);
>>
>>int main()
>>{
>> foo(NULL); // roept foo(long) aan
>>}
>
>
> Dit vind ik levensgevaarlijke code. In zo'n geval kan het van de
> compilerversie afhangen welke van de 2 overoaded functies aangeroepen
> wordt. Leuk als je zoiets moet debuggen als het fout gaat. :-(
>
>
>>Bottomline: dit soort details zorgt ervoor dat C en C++ toch als
>>verschillende programmeertalen moeten worden gezien.
>
Helemaal mee eens.
Dat voorbeeld van die functies met verschillende signatuur geeft al aan
hoe schijnbaar de typesafety van C++ is: de mogelijkheid om een andere
betekenis te geven wordt meteen geexploiteerd.
> Ja, al vind ik persoonlijk dat dat verschil zo klein mogelijk gemaakt zou
> moeten worden i.p.v. zo groot mogelijk, waar sommige C++ ontwerpers
> blijkbaar naar streven.
>
Dat weet ik niet. Of er nou grove verschillen zij of kleine: je moet op
je hoede zijn. Grote verschillen zijn wellicht makkelijker te
onthouden/detekteren.
AvK
Technical Details
Message-ID:
<y6CdnR8nao-u5GPcRVnyvA@casema.nl>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!newsread.com!news-xfer.newsread.com!news-feed01.roc.ny.frontiernet.net!nntp.frontiernet.net!nntp.giganews.com.MISMATCH!border1.nntp.dca.giganews.com!nntp.giganews.com!local1.nntp.dca.giganews.com!nntp.casema.nl!news.casema.nl.POSTED!not-for-mailReferences:
<%XJId.2415$OZ2.252982@phobos.telenet-ops.be> <ct9k2f.4js.1@news.isolution.nl> <IAzIFp.1qJ@vulcan.xs4all.nl> <41fa3d30$0$96924$abc4f4c3@news.wanadoo.nl> <IB6JF0.2FL@vulcan.xs4all.nl>Show Full Headers
Complete Article Headers
X-Google-Thread: 107324,ab34a8b99e320381 X-Google-Thread: fcea4,ab34a8b99e320381 X-Google-Attributes: gid107324,gidfcea4,public X-Google-Language: DUTCH,ASCII-7-bit Path: arc1-ca.pugleaf.net!g2news1.google.com!news1.google.com!newsread.com!news-xfer.newsread.com!news-feed01.roc.ny.frontiernet.net!nntp.frontiernet.net!nntp.giganews.com.MISMATCH!border1.nntp.dca.giganews.com!nntp.giganews.com!local1.nntp.dca.giganews.com!nntp.casema.nl!news.casema.nl.POSTED!not-for-mail NNTP-Posting-Date: Mon, 31 Jan 2005 12:30:11 -0600 Date: Mon, 31 Jan 2005 19:30:10 +0100 From: moi <avk@localhost> User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040510 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: nl.comp.programmeren,be.comp.programming Subject: Re: Lijnen tellen van een project References: <%XJId.2415$OZ2.252982@phobos.telenet-ops.be> <ct9k2f.4js.1@news.isolution.nl> <IAzIFp.1qJ@vulcan.xs4all.nl> <41fa3d30$0$96924$abc4f4c3@news.wanadoo.nl> <IB6JF0.2FL@vulcan.xs4all.nl> In-Reply-To: <IB6JF0.2FL@vulcan.xs4all.nl> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Message-ID: <y6CdnR8nao-u5GPcRVnyvA@casema.nl> Lines: 64 NNTP-Posting-Host: 83.83.6.100 X-Trace: sv3-C8aYduqaWQPVwjwLtZor5Qb1SnQV60MDZyn+UlmltDWd5LwCuxSES7bxyjLGORz6MRXr+QGSHeFjwTX!yV59s16XubwAydgeChjhLFwGlvbqe5Yr/McrQKfngoXp9JAZEAkZvjwiKe2pOUZnMyk= X-Complaints-To: abuse@casema.nl X-DMCA-Complaints-To: abuse@casema.nl 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