Tip Bank

DevX - Software Development Resource

Support for WMLScript

Question: Do all WAP-enabled devices support WMLScript? If not, how do I find out which ones do? Answer: WMLScript is compiled into bytecode before running on the WAP client—it is

DevX - Software Development Resource

WAP 1.0, 1.1, and 1.2 Deltas

Question: Do you know of any resource that readily identifies the differences between WAP 1.0, 1.1, and 1.2? Answer: Not that I’m aware of, but you might want to let

DevX - Software Development Resource

Viewing WML Files With Nokia Phone

Question: If I create an ASP that outputs WML, can I use the Nokia Toolkit 6150 phone to view the ASP output? Answer: Yes, you can use the emulator tools

DevX - Software Development Resource

Ruminations on Garbage Collection

Many programmers think of automatic garbage collection (GC) as the Holy Grail of programming that will free them from every conceivable bug. This approach is wrong, though. One has to

DevX - Software Development Resource

Prefer Stringstream Objects to Strstream Objects

In pre-standard C++, the strstream family of classes was used as buffered stream classes. These classes are now considered deprecated; you should use the stringstream family of classes instead. For

DevX - Software Development Resource

Invariants in C++

The notion of invariants was introduced nearly 30 years ago. In essence, an invariant is the property that makes the state of an object well-defined. Usually, the invariant of a

DevX - Software Development Resource

Restrictions on Using Memcpy()

You should use memcpy() only for copying POD (plain old data) types, but not class objects. For copying objects, use their assignment operator or the std::copy() algorithm. Remember also that

DevX - Software Development Resource

What’s in a Block?

A compound statement is a sequence of one or more statements enclosed between { and }. For example: for (int n=0; n

DevX - Software Development Resource

Re-entrant Functions

A function that can be safely called while it’s already executing is said to be re-entrant. The C++ standard doesn’t state whether the Standard Library’s functions are re-entrant; this is