Converting Python app to C++ completely
Nicola.Musatti at ObjectWay.it
Fri Aug 30 18:24:07 CEST 2002
Alan James Salmoni wrote:
> > Memory management is, I'm sure, the single biggest source of fatal
> > errors in C++ code. Of course, in Python you don't have to deal
> > with it at all :-) In C++, every bit of dynamic memory you use is
> > pretty much your responsibility to clean up, and of course you
> > must be careful not to overwrite the bounds of memory blocks,
> > free a memory block twice, forget to free a memory block, use
> > a memory block after it's been freed, use memory that you haven't
> > explicitly allocated, etc., etc. We C++ programmers have developed
> > tricks to help us deal with this sort of thing, in much the same
> > way that people who suffer severe childhood trauma develop
> > psychological mechanisms to insulate themselves from those
> > experiences :-) You should get a copy of Scott Meyers's books
> > "Effective C++" and "More Effective C++", along with the
> > latest edition of Stroustrup's "The C++ Programming Language"
> > that you can find. Unlike Python books, C++ books are almost
> > universally crap (they will lead you down hellbound paths
> > by "forgetting" to tell you about really important corners of
> > the language); the Meyers and Stroustrup books are among the
> > exceptions. I suspect Eckel's "Thinking in C++" would be good
> > too, but I haven't read it.
> Recommendations noted!
Another book that is well thought of, especially for C++ beginners that
already have a programming background, is "Accelerated C++", by Andrew
Koenig & Barbara Moo. Another option is to enroll in the ACCU Mentored
Developers' Begin C++ project (http://www.accu.org/begincpp/public/)
which uses the Koenig/Moo book as a base. I believe you'll have to join
ACCU, but I believe it's worth it, especially if you live in the UK, as
your email address seems to indicate.
Note that while the ACCU is traditionally C/C++ oriented, it is
expanding its interests to the extent that the Python UK user group was
considering joining forces.
More information about the Python-list