Release 73
2001-02-21
"You can get credit for something or get it done, but not both.Dr. Richard Garwin
WFC development continues at glacial speeds. I am now a home owner so I get to do "house things" instead
of coding (leaking roof, build a deck, etc). Such is life. WFC will continue to take a back seat as my wife and I
concentrate on filling our nice new house with children. Also, I will be shifting my
focus to C# although all performance code will be done in C++. C# has a design/philosphy flaw where
destructors are considered to be a bad thing (along with any form of memory allocation).
I know, I know. Many of you out there will think I'm a Neanderthal for saying this but
did we learn nothing from Java? In C# you are not supposed to worry about the "lifetime"
of your objects. In C++ you have this concept where a function (called a destructor) will be
called when your object falls out of scope or is freed. Destructors were a great place
to de-allocate resources allocated during the lifetime of your object. C# has the same
kind of thing, almost. C# destructors are only called when the garbage collector feels like
getting rid of your object. When this happens is pretty much random and when it does your
system will screech to a grinding halt. Whenever you see programming tips such as "You
should always call the Dispose method when you no longer need an object" you know
you're hacking around a design flaw. The problem really gets bad/noticable when you have a
C# object wrapping an operating system handle of some sort (window handle, GDI object handle,
file handle, etc).
- CFile64 now has methods to read strings, string arrays and XML documents
- wfc_read_xml_from_file
Release 51 Notes
Return to Sam's Home Page