diff options
Diffstat (limited to 'xsd/cxx/options.cli')
-rw-r--r-- | xsd/cxx/options.cli | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/xsd/cxx/options.cli b/xsd/cxx/options.cli index 2203188..78fd587 100644 --- a/xsd/cxx/options.cli +++ b/xsd/cxx/options.cli @@ -21,7 +21,23 @@ namespace CXX { "<version>", "Specify the C++ standard that the generated code should conform to. - Valid values are \cb{c++98} (default) and \cb{c++11}." + Valid values are \cb{c++98} (default) and \cb{c++11}. + + The C++ standard affects various aspects of the generated code that + are discussed in more detail in various mapping-specific + documentation. Overall, when C++11 is selected, the generated + code relies on the move semantics and uses \cb{std::unique_ptr} + instead of deprecated \cb{std::auto_ptr}. + + When the C++11 mode is selected, you normally don't need to + perform any extra steps other than enable C++11 in your C++ + compiler, if required. The XSD compiler will automatically + add the necessary macro defines to the generated header files + that will switch the header-only XSD runtime library (\cb{libxsd}) + to the C++11 mode. However, if you include any of the XSD runtime + headers directly in your application (normally you just include + the generated headers), then you will need to define the + \cb{XSD_CXX11} macro for your entire project." }; // Character type and encoding. |