Originally Posted by
DougDbug
I think you meant to say superset. The .NET stuff is additional to the standard language. And, I don't see how you how you could write a useful C++ .NET program without using any standard C++ library functions/features. If you do, are you really writing a C++ program??? (The syntax/compiler may not require your to explicitly "#include" the header files... I don'' know.)
It is a subset because, you can't have local class declarations or memeber classes. Only pointers to allocated classes from the heap. I'm not sure if you can use the reference operator.
In .net one obvously have all needed stuff to replace vector, string, list whatever from iso c++, and much more
So stuff like
Code:
class A{};
class X{
A a;
}
int main(){
X x;
}
is invalid in C++ .net, because al memory management as to be done by the GC.
the .net syntax is the same for java or c#
Code:
class A{};
class X{
A* a;
X() : a(new A()){}
}
int main(){
X *x = new X();
}