Ok im a new C++ student and im somewhat confused by the C++ libary choices i can make, i keep thinking of java where there was _one_ libary, or at least thats all i ever had to worry about.


From what ive gathered...

Standard C libary, contains functions like cout, cin, and string, is this libary cross platform? Would i be able to compile this on a windows machine and then run it on a *nix platform?

Then there's the Microsoft Foundation Classes, MFC, which was made for programing for a windows interface by, as the name implies, microsoft.

Then what does C++ use for .net? It would need to be another libary right?

Then theres the windows API i believe, which is a more basic and lower level programming than the MFC?





And theres another libary, Form, or Forms, which i believe is what c sharp uses for .net, is there another libary for C# that doesnt requre forms so you can run your C# program outside of a .net framework?