I'm currently reading an unreleased master thesis report, that I'm going to give feedback on.
In the report they mention Garbage Collector under native C++ and managed C++. I thought C++ didn't have any standard GC, am I wrong or right? (They do not mention Boehm-Demers-Weiser.)
They have some problem getting it to work under some conditions. They create objects in one thread, and then delete the pointer from another thread.
Native C++ by default has no such thing (the closest thing to this are the smart pointers, but that's still something entirely different), but that doesn't prevent you from writing your own garbage collection solution (or using third party solution).
Managed C++ (and its successor C++/CLI) of course use .NET garbage collection for managed resources (though native resources are not garbage collected and have to be managed manually as in native C++).