Adjust the structure of the source file to the header file.
1. CMakeLists.txt added to automatically obtain the revised version number from the git repository. 2. Adjusted some header files to fix Windows platform compilation errors. 3. Eliminate some compilation warnings.