unisgned integers and global cases in C#

Discussion in 'Web Design & Coding' started by Complete, Jan 9, 2009.

  1. Complete

    Complete OSNN Addict

    I am used to C++ more than C#.

    In C++ you have header files and you have the ability to declare states. For example, you can declare a series of unsigned integers to be for a variety of different states to later use in switch statements or if-then statements.

    Since C# does not have the same sort of structure with header files, how would I impliment a simular functionality in C#?

    The reason why I want to use UINT is because you can do that super cool bit-wise and and or with them. Remember those good ol' days? You could define four different conditions like this:

    UINT state_001 2
    UINT state_002 4
    UINT state_003 8
    UINT state_004 16

    Then a variable can be any one state or any combination of states. To assign a variable a particular state, you do a bitwise and to the variable. To see if the variable was set to any of the states, you do a bitwise or.
    How would that look like in Visual C#?
  2. X-Istence

    X-Istence * Political User

    Why do you want to do this? What is the ultimate end goal?

    Also, having initialised ints in C++ is a waste, rather use #define.

    #define state0 (1 << 0)
    #define state1 (1 << 1)
    #define state2 (1 << 2)
    #define state3 (1 << 3)

    unsigned int myvar = state1 & state3

    This way no memory needs to be allocated to store "dumb" numbers that are never going to change, and certain compiler optimisations can be used.