Gary reported that
if (mystring == "test") ...
if ("test" == mystring)
do not return the same result. The reason is that not all
combinations of comparison operators are actually
defined in the string class. As a result, the compiler puts
a simple pointer comparison for the second statement
above, and the result is, in fact, always false.