Uma sugestão parça, o arquivo .h foi criado para ser cabeçalho de C, quando se programa em cpp utilizamos .hpp. Isso não é uma unamidade, .h pode funcionar mas convencionalmente usamos .hpp
1
2
Na verdade, não acredito que convecionalmente é usado .hpp
, pois eu já vi vários repositórios que usam .h
, por exemplo stockfish ou Hazel.
Outra referêcia que costumo usar para estilo de código em C++ é o Google C++ Style Guide. Ele recomenda:
Header files should be self-contained (compile on their own) and end in .h. Non-header files that are meant for inclusion should end in .inc and be used sparingly.