C++ Rules:

1. Array assignment can either be
     a). Assigned when declared.
          int size[4] = {1, 2, 3, 4};
          int size[] = {1, 2, 3, 4};
          int size[4] = {6,2};   //partial assignment, the 3rd and 4th element is 0 set by compiler.
    b). can only be partial assigned after declare.
         for (int i xxxx) {
             size[i] = i;
         }

2. only static or const variables can be initialized in .h file.

The above two rules make initialization of array a bit tricky.

so we can only
initialize a static array in .h file;
declare and initialize later;
declare and initialize locally.