🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.lang.c++
Article #720

Re: enums

#720
From: Torsten Vogt
Date: Fri, 03 Nov 1995 12:09
64 lines
2422 bytes
Hi Benni,

[...]
> Mein Compiler weigert sich enums implizit nach int zu konvertieren. Das
> ist ja einerseits irgendwie korrekt, andererseits doch aber hochgradig
> unpraktisch, da dann so schoene Konstrukte, wie:
> 
> const int maxcolor = 3;
> enum color {blue, white, green};
> 
> for(i=0;i=maxcolor;i++){
          ^^^^^^^^^^

Oooops, kann es sein, dass dies Dein Fehler ist? Wie waere es mit
i<maxcolor ? Welchen Datentyp hat i eigentlich? Vom Typ color?

>	draw(i);
> }
>
> nicht mehr moeglich sind. Ich gebe ja zu, dass das nicht typkorrekt ist,
> allerdings wuerde doch eine warning hier wirklich ausreichen, oder. Ich
> finde fuer solche Sachen sind enums doch eigentlich da ;-)
> 
> Compiler: 	HP-UX-9 CC 	-> Error
> 	  	g++ 2.5.8	-> Warning
>	 

Ich habe folgendes Programm auf einer Sun SPARC station und gcc 2.6.3
ausprobiert:

enum color {blue,white,green};
int main() {
   color i;
   for (i=0; i<3; i++) 
       printf("%d\n", i);
   return 0;
}

Zum einen tut es was es soll, zum anderen gibt es die von Dir geforderten
Warnings. Uebrigens finde ich folgende Konstruktion sinnvoller, und sie
produziert keine Warnings:

enum color {blue,white,green};
int main() {
   int i;
   for (i=blue; i<=green; i++) 
       printf("%d\n", i);
   return 0;
}


Gruss Torsten

-- 
---------------------------------------------------------------------
| Torsten Vogt                                                      |
|  Universitaet Mannheim - Lehrstuhl Praktische Informatik I        |
|  Seminargebaeude A5                                               |
|  D-68131 Mannheim                                                 |
|                                                                   |
|  Tel  : 0049-621/292-5132  Fax: 0049-621/292-5297                 |
|  email: vogt@pi1.informatik.uni-mannheim.de                       |
|  WWW  : http://pi1.informatik.uni-mannheim.de/HomePages/vogt.html |
---------------------------------------------------------------------
Technical Details
Message-ID: <47d0ot$co6@trumpet.uni-mannheim.de>
Path: arc1-ca.pugleaf.net!news.uni-mannheim.de!pi1!vogt

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!news.uni-mannheim.de!pi1!vogt
From: vogt@pi1.uni-mannheim.de (Torsten Vogt)
Newsgroups: de.comp.lang.c++
Subject: Re: enums
Date: 3 Nov 1995 12:09:01 GMT
Organization: Universitaet Mannheim
Distribution: world
Message-ID: <47d0ot$co6@trumpet.uni-mannheim.de>
Reply-To: vogt@pi1.informatik.uni-mannheim.de
NNTP-Posting-Host: pi1.informatik.uni-mannheim.de