Enumerations: Difference between revisions

From Rosetta Code
Content added Content deleted
Line 11: Line 11:
REM Impossible. Can only be faked with arrays of strings.
REM Impossible. Can only be faked with arrays of strings.
OPTION BASE 1
OPTION BASE 1
DIM SHARED fruitsName$(1 to 3);
DIM SHARED fruitsName$(1 to 3)
DIM SHARED fruitsVal%( 1 to 3);
DIM SHARED fruitsVal%( 1 to 3)
fruitsName$[1] = "apple"
fruitsName$[2] = "banana"
fruitsName$[3] = "cherry"
fruitsVal%[1] = 1
fruitsVal%[2] = 2
fruitsVal%[3] = 3


REM OR GLOBAL CONSTANTS
fruitsName$[1] = "apple";
fruitsName$[2] = "banana";
DIM SHARED apple%, banana%, cherry%
apple% = 1
fruitsName$[3] = "cherry";
banana% = 2

fruitsVal%[1] = 1;
cherry% = 3
fruitsVal%[2] = 2;
fruitsVal%[3] = 3;


==[[C]]==
==[[C]]==

Revision as of 03:35, 23 February 2007

Task
Enumerations
You are encouraged to solve this task according to the task description, using any language you may know.

Create an enumeration of types with and without values.

BASIC

Interpeter: QuickBasic 4.5, PB 7.1

 REM Impossible. Can only be faked with arrays of strings.
 OPTION BASE 1
 DIM SHARED fruitsName$(1 to 3)
 DIM SHARED fruitsVal%( 1 to 3)
 fruitsName$[1] = "apple"
 fruitsName$[2] = "banana"
 fruitsName$[3] = "cherry"
 fruitsVal%[1] = 1
 fruitsVal%[2] = 2
 fruitsVal%[3] = 3
 REM OR GLOBAL CONSTANTS
 DIM SHARED apple%, banana%, cherry%
 apple%  = 1
 banana% = 2
 cherry% = 3

C

Compiler: GCC, MSVC, BCC, Watcom

Libraries: Standard

 enum fruits { apple, banana, cherry };
 enum fruits { apple = 0, banana = 1, cherry = 2 };

C++

Compiler: GCC, Visual C++, BCC, Watcom

 enum fruits { apple, banana, cherry };
 enum fruits { apple = 0, banana = 1, cherry = 2 };

C#

 enum fruits { apple, banana, cherry }
 enum fruits { apple = 0, banana = 1, cherry = 2 }
 enum fruits : int { apple = 0, banana = 1, cherry = 2 }

D

Compiler: DMD,GDC

Forth

Fortran

Java

Java 1.5 only

 enum fruits { apple, banana, cherry }
 enum fruits
 {
   apple(0), banana(1), cherry(2)
   private final int value;
   fruits(int value) { this.value = value; }
   public int value() { return value; }
 }

JavaScript

 var fruits { apple, banana, cherry };
 var fruits { apple : 0, banana : 1, cherry : 2 };

JSON

 fruits { apple, banana, cherry };
 fruits { apple : 0, banana : 1, cherry : 2 };

JScript.NET

 enum fruits { apple, banana, cherry }
 enum fruits { apple = 0, banana = 1, cherry = 2 }

Perl

Interpeter: Perl

 # Using an array
 my @fruits = qw{ apple, banana, cherry };
 # Using a hash
 my %fruits = ( apple => 0, banana => 1, cherry => 2 );

PHP

 // Using an array/hash
 $fruits = array( "apple", "banana", "cherry" );
 $fruits = array( "apple" => 0, "banana" => 1, "cherry" => 2 );

VB.NET

Interpeter: VB.NET

 ' Is this valid?!
 Enum fruits
 apple
 banana
 cherry
 End Enum
 ' This is correct
 Enum fruits
 apple = 0
 banana = 1
 cherry = 2
 End Enum