On Monday, July 2, 2012 4:52:07 PM UTC-5, Bo Persson wrote:
Le Chaud Lapin skrev 2012-07-02 20:15:
But if I see the word "class", as a keyword, then I have certain
expectations about the semantics of that keyword, according to the
C++ standard, and if those expectations are violated by, for
example, not making the member functions private by default, then
to me, that is changing the semantics of a fundamental C++
keyword.
But you have to accidentally write "interface class" for that to
happen. What are the odds for doing that by mistake?
Not very high for a veteran C++ coder. But imagine an 18-year-old
student who is just learning C++. Actually, lets skip the
hypothetical and use an actual situation:
One of my students is a 32-year-old mother of three. She is just
starting to learn C++ and very busy with a full-time job. She has
no idea what is standard and what is not. Being on Windows, she was
going to use Visual Studio Express, but I talked her out of it
because Microsoft decided, at one point, that the upcoming version
of Visual Studio Express would only allow Metro development.
http://www.wired.com/wiredenterprise/2012/06/visual-studio-pricing/
Note the significance of this. Even "Hello, World." would require
managed (non-standard) C++. The console was forbidden.
That was a mistake, and they have changed this decision. Another
flavor of the compiler will be available as well.
http://blogs.msdn.com/b/visualstudio/archive/2012/06/08/visual-studio-express-2012-for-windows-desktop.aspx
[ comp.lang.c++.moderated. First time posters: Do this! ]