Unfortunately, C++ internals change from compiler to compiler, even from same manufacturer between updates, making impossible usable C++ dynamic libraries safely (C calling conventions are standard, while that is not enough for C++, because of class handling). Unless that becomes solved, C++ will never be able to compete with C for library and system development.
I will struggle my way through this, having mostly given up on "Inside the C++ Object Model" by Stan Lippman. I have heard it said that Lippman's book is very out of date and a lot of it doesn't apply to modern compilers.<p>Link seems to be down, although some of it is cached by google. Is there a way to use google webcache to edit the hyperlinks in a cached article so that they point to cached versions of the target?
In our past games, we had extensive C++ serialization (marshalling, pickling, whatever you call it).<p>We had to fight gcc 2.95, metrowerks, and few other compilers putting the "virtual table pointer" at different places - begining of object, end, etc. Then alignment differences (not strictly C++), and bitfields. Hopefully mangling was avoided, as we did not had to reference at runtime the data, we had pointers.<p>It was quite messy, and you could not reuse exported data - had to be for each platform/compiler.
I'm getting:<p><pre><code> PDOException: SQLSTATE[HY000] [2002] Can't connect to local
MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
in lock_may_be_available() (line 165 of
/srv/www/avabodh.com/public_html/includes/lock.inc).</code></pre>
It is also worth highlighting that extensive object oriented systems can and have been built on top of C :<p><a href="http://library.gnome.org/devel/gobject/stable/" rel="nofollow">http://library.gnome.org/devel/gobject/stable/</a>