C++ mathematic expression parser