you can turn down your error reporting to not report some of the not very important warinings, like unreferenced paramters and stuff (warning level on the C++ tab in project settings). You can also disable some of the warnings via the #pragma disable directives. I do not know why console apps do not generate the same warnings, but I guess VC just handles error checking differently in console apps. But, hey... they are just warnings ;-)

I am not overly familiar with the STL, but I do believe much of the STL functionality has been duplicated in the MFC. There is a CArray template (vector), there is a CList template (list), there is a CQueue template (queue), ...

--michael