Article View: nl.comp.programmeren
Article #517Re: problemen in Visual C++
From: Jo Vermeulen
Date: Mon, 19 May 2003 14:37
Date: Mon, 19 May 2003 14:37
75 lines
3755 bytes
3755 bytes
Sjoerd Schreuder wrote: > Jo Vermeulen wrote: >> Ben een abstracte klasse aan het compileren met Visual C++ maar >> krijg een >> heel rare error. De fout zit in de constructor volgens VC++. >> Dit is de error: >> >> interface.h(26) : error C2234: '<Unknown>' : arrays of references >> are illegal >> >> Onder g++ compileert het wel. >> Iemand een idee wat ik fout doe? > > De foutmelding lijkt me duidelijk: je maakt een array van references > aan, en dat mag niet volgens de C++ standaard. g++ heeft een > niet-standaard uitbreiding die het blijkbaar wel toestaat. Het project compileerde perfect, totdat ik de klassen Interface, ConsoleInterface, enz. eraan toegevoegd had. Dus volgens mij zit daar de fout niet. > > De oorzaak van de fout is mij niet geheel duidelijk, maar zal wel in > de definitie van Dictionary of Dna zitten. Ik ben dus benieuwd naar > de definitie van die typen. .cpp of .h files zien? > Overigens is het slordig om m_pDna, m_pC, m_pJ en m_pV niet te > initialiseren > in de constructor. Die initialiseer ik in de derived classes van interface, maar je hebt gelijk, dat kan ik evengoed hier doen. > Ook het gebruik van "using namespace std;" in een header is niet zo > handig. Daardoor, en door het gebruik van de rare naam "stdin" voor > een boolean, moest > ik toch even kijken wat er nou met stdin gebeurde en twee keer kijken > of er > nou std::stdin of een lokale stdin werd gebruikt. Het laten staan van > die "std::" overal is wel zo duidelijk. Ik gebruikte eerst std::cout en std::vector enz., maar Visual Studio versie 6 kan daar niet mee overweg. Daarom dat we dus genoodzaakt waren om using namespace std; te gebruiken. De naam van stdin, kunnen we eventueel wel veranderen in useStandardInput of zo. > > Verder lijkt het erop dat een File en een Dictionary steeds met > elkaar verband houden. Waarom heb je geen aparte klasse voor die > combinatie? Hoe bedoel je? We lezen de dictionary's idd in van een file ja (wordt meegegeven aan de constructor). > Maar laat ik maar ophouden met commentaar op het ontwerp. Ik kan daar > nog > wel even mee doorgaan, maar daar zit je waarschijnlijk niet op te > wachten. > De code zou in ieder geval, zelfs na bovenstaande correcties, op mijn > werk > niet door de code review heenkomen. Suggesties zijn altijd welkom Sjoerd, bedankt! Sorry voor mijn quote-stijl, zit hier op school met Outlook Express te mailen, en heb wat problemen om OE-Quotefix te installeren :s Mvg, -- Jo Vermeulen
Technical Details
Message-ID:
<baaq6e$2ikv$1@nl-news.euro.net>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-09!supernews.com!newsfeeds.sol.net!skynet.be!skynet.be!213.51.129.3.MISMATCH!newshub1.home.nl!home.nl!news2.euro.net!nl-news.euro.net!not-for-mailReferences:
<baanpv$2hff$1@nl-news.euro.net> <3EC8E7AA.58E90275@wanadoo.nl>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: 107324,56acb9c9578c3917 X-Google-Attributes: gid107324,public X-Google-Thread: fcea4,56acb9c9578c3917 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-05-19 07:37:04 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-09!supernews.com!newsfeeds.sol.net!skynet.be!skynet.be!213.51.129.3.MISMATCH!newshub1.home.nl!home.nl!news2.euro.net!nl-news.euro.net!not-for-mail From: "Jo Vermeulen" <jo.vermeulen@student.luc.ac.be> Newsgroups: nl.comp.programmeren,be.comp.programming Subject: Re: problemen in Visual C++ Date: Mon, 19 May 2003 16:37:06 +0200 Organization: EuroNet Internet Lines: 77 Message-ID: <baaq6e$2ikv$1@nl-news.euro.net> References: <baanpv$2hff$1@nl-news.euro.net> <3EC8E7AA.58E90275@wanadoo.nl> NNTP-Posting-Host: 0118646.dhcp.luc.ac.be X-Trace: nl-news.euro.net 1053355023 84639 193.190.14.110 (19 May 2003 14:37:03 GMT) X-Complaints-To: usenet@nl-news.euro.net NNTP-Posting-Date: Mon, 19 May 2003 14:37:03 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165