14.18 Strings
The mapping of these functions to C++ is as follows:
// C++
namespace CORBA {
static char * string_alloc(ULong len);
static char * string_dup (const char *);
static void string_free(char *);
...
} Note:
A static array ofchar in C++ decays to a char*. Therefore, care must be taken when assigning a static array to a String_var, because the String_var assumes that the pointer points to data allocated via string_alloc, and thus eventually attempts to free it using string_free.
This behavior has changed in ANSI/ISO C++, where string literals
are const char*, not char*. However,
since most C++ compilers do not yet implement this change, portable
programs must heed the advice given here.
The following sections describe the functions that manage memory allocated to strings.
Parent topic: CORBA API