SAX/C++: C++-specific design principles
Here are the principles that I applied to creating my first draft SAX/C++ interface: 1. Use references when there can never be a null value, pointers otherwise. 2. Pointers never change ownership -- if a Parser (for example) wants to own an InputSource, it needs to make its own copy. The app has to free everything that it allocates, and the SAX driver, likewise. 3. Callbacks cannot be const, since they often change the state of the client app. 4. Hold my nose and use UTF-8 rather than UTF-16, for compatibility with most existing C++ code. 5. Use char * rather than string, to avoid forcing a lot of allocation overhead on the SAX driver. All the best, David -- David Megginson david@m... http://www.megginson.com/ xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev@i... Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/ and on CD-ROM/ISBN 981-02-3594-1 To unsubscribe, mailto:majordomo@i... the following message; unsubscribe xml-dev To subscribe to the digests, mailto:majordomo@i... the following message; subscribe xml-dev-digest List coordinator, Henry Rzepa (mailto:rzepa@i...)
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format