Is there a correct way to handle APIs that invent their own types?
For example, WinAPI, QT, Boost.
Many frameworks have their own integer and boolean types, along with more complicated data-types.
So, is it better to use native C/C++ type like
bool or alternatives like
QBool/BOOL/etc., and native container types like
std::map/std::set/std::vector vs reinvented ones like
And how do those choices respond to cross platform portability.
QBool IsInteresting(const QString &str) vs
bool IsInteresting(const std::string &str)?