Topic:I have finally figured out how to declare array[] in .h
Rootcause:

1. If the header file is not included by any other header files, then it is
ok to declare and define the array as normal:
In Header file:
         int intarray[] = {0, 1, 2, 3, 4};
         int intarray2[4] = {0};

         int intarray4[4];
         int size = sizeof(intarray4) / sizeof(int);
         for (int i = 0; i < size; i++) {
             intarray4[i] = 0;
         }

2. If the header file is included by other header files, the variable defined in
header file will be visible or accessable somehow by the other header files. So I must
declare and define in the cpp file.
In Cpp file:
        static int array[] = {0, 1, 2, 3, 4};