Make C++ code generation of string oneof field compatible with C++11

This PR doesn't introduce any C++11 specific feature, but only fixes the behavior with C++11 so that it works fine in the same way as with C++03.

You can reproduce the "problem" by `make check` configured with `CXXFLAGS=-std=c++11`.
Applying first commit will reveal the `oneof` part.

Tested with clang 3.5.0 and gcc 4.9.2 with and without `-std=c++11`.