[C++] update statemap.h from SMC
[C++] use g++ options
[C++] refactor assert
[C++] rename guard
[C++] refactor condition
[C++] remove useless return
[C++] refactor parentheses
[C++] inline
[C++] only C++ comment
[C++] no member reference
[C++] explicit
[C++] const
[C++] virtual