diff -r 80ef3a206772 -r 48780e181b38 Symbian3/SDK/Source/GUID-8675AC01-E2D8-425C-899F-12BE99345AA9.dita --- a/Symbian3/SDK/Source/GUID-8675AC01-E2D8-425C-899F-12BE99345AA9.dita Fri Jul 16 17:23:46 2010 +0100 +++ b/Symbian3/SDK/Source/GUID-8675AC01-E2D8-425C-899F-12BE99345AA9.dita Tue Jul 20 12:00:49 2010 +0100 @@ -83,7 +83,7 @@ // 3 wasted bytes TReal iReal; // offset 8, 8 bytes } // total length = 16 bytes - +

Structures are regarded as T types: that is they may not own heap-allocated resources such as C type classes.

An array contains many built-ins or other types

TInt a[32]; // 32 TInts, = 128 bytes @@ -98,7 +98,7 @@ take the address of an object, then you can refer to it by pointer:

S* ps; // pointer to an S ps=&s // take address of existing S

A pointer is a 32-bit machine word, and could point to anything.

- +

The specifier is placed next to the type rather than the name.

There is often a need to refer to memory as anything: for this, a void* pointer is used in C++. In Symbian, a TAny* may be referred to instead. @@ -108,7 +108,7 @@ does two things: firstly, it sets aside six bytes of memory containing the characters 'h', 'e', 'l', 'l', 'o', '\0'. Secondly, it sets the pointer hello to contain the address of the first of those bytes.

- +

Functions accessing the string rely on this address as its starting point, and the terminating \0 to indicate its end. Functions which manipulate the string must either deliberately not extend it, or must