>>>>> "Asger" == Asger Alstrup Nielsen <[EMAIL PROTECTED]> writes:
Asger> In the C++ standard, the definitions that you get with the
Asger> "#include <string>" directive are all encapsulated in the "std"
Asger> namespace.
Asger> Namespaces are relatively new to the C++ language. They allow
Asger> you do avoid name space clashes, because you can pool together
Asger> the names into a namespace. All the names defined in the
Asger> standard C++ library, including the STL, are declared in the
Asger> "std" namespace. So, in order to use those names, you have to
Asger> qualify your names with the namespace.
Ah, you mean that C++ finally decided to take some turbo pascal
features ;) That's fine with me.
Asger> When it comes to LyX, we have to deal with this differently. I
Asger> suggest that we add a "LStrings.h" header where we make sure
Asger> that the "string", "wstring" and "LString"s are properly
Asger> declared and imported into the global namespace. Then, we can
Asger> #define our way out of trouble in that header file to make
Asger> things work with all the compilers that can be tweaked into
Asger> what we want.
Why not do it directly in LString.h? It already contains some black
magic anyway.
JMarc