ISO/IEC has standardized C++. Whatever the different Providers build c++ they differ in libraries, IDE and so on. But basic of C++ is same everywhere. please follow the link
] to learn about the history and provided standards of c++.
and As Shakti Misra said C# is no such thing as safe version of C++. When we talk about data security we don't mean securing from hacker. By data security we mean securing from the mistake of programmer which can lead to loosing data, data corrupting etc.
And the purpose of Java and .net...
If you take a look then you will see that every processor has different set of instructions, different length of instructions, it is not possible to write a low level code in such a way so that it would run on any machine freely. To overcome this problem compilers like c, FORTRAN, ADA, Pascal etc. were introduced. Even though there was some problem still there such as variation between technologies from machine to machine, operating system to operating system. Java was step to overcome this problem. If you compile a Java program then you can(!) run on every machine. cause java is compiled targeting the Java virtual machine. Well .Net is the same thing(!!!). Even though when you use a Win32 API in a .Net program, I think, it loose its portability. Honestly speaking only thing I see of benefit of C# over C++ is its easy IDE (VB6 had that too.)
Well dont take my answer seriously. I am not good at explaining my thought