The words "simple", "C++" and "tool" don't belong in the same sentence.
If you want to analyze C++ code, you presumably want accurate answers, and that requires accurate parsers.
Our DMS Software Reengineering Toolkit with its C++14 front end can do this. DMS runs under windows, and its C++ front end can handle ANSI C++14, GCC/Clang or Visual Studio dialects of C++.
You can see example ASTs produced by DMS at get human readable AST from c++ code
DMS has an option to export such ASTs as XML, which would satisfy OP's request as explicitly stated.
He probably doesn't really want this. For any serious-size chunk of source code, such XML files are huge. A thousand line C++ program will produce approximately 10,000 lines/500K characters of XML output. This is clumsy to produce/read/process. If you include typical header files, you can easily reach 100K lines of C++ code; if you leave them out, you can't analyze the code very well. DMS itself provide lots of machinery to navigate the ASTs it generates; it will be a lot easier to write an analyzer using the machinery provided by DMS than to re-invent all of that to work with XML.
As a practical matter, to do any serious analysis of C++ you need what amounts to symbol table information, and you will probably want control and data flow analysis information. DMS can provide these, too. See Life After Parsing.