How does this do what it does (C++ classes, use of colon)

sorry, but without some explanation i don't understand all these cases

i think in general you're making that the point that an array as a whole can't be treated as a monolithic singular variable

     int a [3] = { 1, 2, 3};
     int b [3];

     b = a

such as you might with a struct. i don't see this as a limitation.

these seem like similar discrepancies between c-strings and string.

sorry. it wasn't clear from what i saw.

doesn't that depend on the language?

don't understand. i love static initialization

// structure containing all servo parameters
struct Servo { 
    int     pinBut;
    int     servo;

    int     pulWidA;
    int     pulWidB;

    int     pinLedRed;
    int     pinLedGrn;

    int     stateServo;
    int     stateBut;
};


Servo servos [] = {
    {3,  0, 370, 285, 4,   5}, //Alton Siding 1
    {6,  1, 370, 285, 7,   8}, //Alton Siding 2
    {9,  2, 370, 285, 10, 11}, //Alton Siding 3
    {22, 3, 370, 285, 23, 24}, //Church's Falls 1
    {25, 4, 370, 285, 26, 27}, //Church's Falls 2
    {28, 5, 370, 285, 29, 30}, //Sawmill
    {31, 6, 370, 285, 32, 33}, //Turntable Entrance
    {34, 7, 370, 285, 35, 36}, //Church's Falls 3
    {37, 8, 370, 285, 38, 39}, //Crossover A
    {37, 9, 370, 285, 38, 39}, //Crossover B
    {40,10, 370, 285, 41, 42}, //Church's Falls 4
};

appreciate you're time trying to explain.

i think the difference between our perspectives is i grew around hardware. in college writing assembler code to access hardware register from pascal programs and have spent almost all of my career working on embedded projects.

it's common to use structs and array definitions, defining a pointer to such an definition, and setting it to the address of hardware. this is what C was designed for (e.g. a tty driver accessing UART registers) for these purposes, i want a very raw understanding of the variable definition. i don't have a problem with the limitations you describe because.

i think i can understand the desire for the features you describe in high level applications. of course, if you're familiar with std::array, then using it at a low-level is not a problems.