"Bernie Deitrick" <deitbe @ consumer dot org> wrote...
>Some programming logic will carryover between VBA and C++, but little else.
>Efficient design in C++ uses pointers, data structures, and I forget what
>other nasties that are hard to understand. . . .
No C++ programmer in his/her right mind uses pointers. They use references.
If you don't know the difference, perhaps you should consider remaining
silent rather than spewing misinformation.
All sensible languages use data structures, so that's an empty point. C++
includes C's struct and union derived types (like VBA 'Type' constructs),
but the real OO power of C++ comes from name spaces, classes and templates.
> . . . In C++, you have to do everything - in VB and VBA, a lot is already
>included in the properties that you set at design time.
However that's irrelevant to game design, which requires as near realtime
performance as possible. In C++, while you may need to build most of the
infrastructure first, it becomes no more cumbersome than VB[A] once that
infrastructure is complete. And unless I've completely missed something in
VB, C++ threads provide UI functionality simply not available in VB.
In short, game development is much more like systems programming than
application programming due the the need to work much more closely with
harware interfaces. Aside from the basics, there's very little in common
between C++ and VB[A].
That said, there are a few open source RPG and FPS games, so the OP's son
could download the source code and study it. As for getting a development
system, FAR FAR cheaper to download a decent Linux distribution (SuSE or
Mandrake, maybe Gentoo, but *not* Red Hat Fedora for a first Linux system)
and choose the developer system at install time. That'll provide a complete
set of GNU C/C++ development tools including a symbolic debugger (that works
nothing like Visual Studio or VBE). Easy enough to find Windows cross
compilers to allow development of Windows binaries under Linux.
If the OP wants to stick with Windows, the MinGW C/C++ compiler suite and
bunutils package would be a decent first choice of systems.