enum vrs const

This is a discussion on enum vrs const within the C++ Programming forums, part of the General Programming Boards category; In the book C++ Primer Plus third edition they use enum to create a symbolic constant ie enum {Q_SIZE=10}; why ...

  1. #1
    Registered User
    Join Date
    Apr 2002
    Posts
    95

    enum vrs const

    In the book C++ Primer Plus third edition they use enum to create a symbolic constant
    ie
    enum {Q_SIZE=10};

    why dont they do this instead?
    const int Q_SIZE=10;

  2. #2
    Guest Sebastiani's Avatar
    Join Date
    Aug 2001
    Location
    Waterloo, Texas
    Posts
    5,600
    There is no good reason for using an enum in that example...

    a better example of using enums might be:

    enum Weight { light, normal, heavy };

    ....

    if(p1.userMeasure< 120) p1.userWeight = light;
    else
    if(p1.userMeasure < 170) p1.userWeight = normal;
    else
    p1.userWeight = normal;

    ...

    if(p1.userWeight == heavy)
    cout << "My how bout some slim-fast?" << endl;

    ...etc.
    Code:
    if( numeric_limits< byte >::digits != bits_per_byte )
        error( "program requires bits_per_byte-bit bytes" );
    24bbs.cpp

  3. #3
    Registered User
    Join Date
    Apr 2002
    Posts
    95
    lol like your example
    thnks

Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Undefined Reference Compiling Error
    By AlakaAlaki in forum C++ Programming
    Replies: 1
    Last Post: 06-27-2008, 11:45 AM
  2. Drawing Program
    By Max_Payne in forum C++ Programming
    Replies: 21
    Last Post: 12-21-2007, 04:34 PM
  3. Certain functions
    By Lurker in forum C++ Programming
    Replies: 3
    Last Post: 12-26-2003, 12:26 AM
  4. Half-life SDK, where are the constants?
    By bennyandthejets in forum Game Programming
    Replies: 29
    Last Post: 08-25-2003, 11:58 AM
  5. oh me oh my hash maps up the wazoo
    By DarkDays in forum C++ Programming
    Replies: 5
    Last Post: 11-30-2001, 11:54 AM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21