I have seen Microsoft code and I find it very odd that they are simply looking at other languages rather than use C++ in a safe manner.
std::shared_ptr and std::weak_ptr go a long way to solving their problems and is in no way any less efficient than the similar system used in Rust.
For example, the C++ bindings to SQL Server... I don't want to see one function returning a raw pointer. I am sick of wrapping your shite in an attempt to make our own code safe.
Stop language hopping and do some sodding work Microsoft ;)