Symbian3/SDK/Source/GUID-7830BAAB-40DD-5E55-84B5-8DCA888E68E7.dita
changeset 0 89d6a7a84779
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Symbian3/SDK/Source/GUID-7830BAAB-40DD-5E55-84B5-8DCA888E68E7.dita	Thu Jan 21 18:18:20 2010 +0000
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
+<!-- This component and the accompanying materials are made available under the terms of the License 
+"Eclipse Public License v1.0" which accompanies this distribution, 
+and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
+<!-- Initial Contributors:
+    Nokia Corporation - initial contribution.
+Contributors: 
+-->
+<!DOCTYPE concept
+  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
+<concept id="GUID-7830BAAB-40DD-5E55-84B5-8DCA888E68E7" xml:lang="en"><title>Using
+TDesC</title><shortdesc>Use TDesC for interfaces which take narrow or wide (Unicode) text,
+depending on the build variant, but does not change the data.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
+<section id="GUID-235E272D-6F5A-5740-8150-9698C8C8D55D"><title>Usage in a
+function interface</title> <p>An interface which needs access to either narrow
+text or wide (Unicode) text, depending on the build variant, but which does
+not need to change that data in any way, can use a <xref href="GUID-52D07F46-2162-380C-A775-C3BB335C42F5.dita"><apiname>TDesC</apiname></xref> as
+the argument type. All build independent concrete descriptors are derived
+from <codeph>TDesC</codeph> which means that the interface can accept any
+build independent descriptor.</p> <p>The following code fragment shows the
+most common function prototype pattern.</p> <codeblock id="GUID-1FAB92F0-D8D1-51C9-B993-9F0FF93659B3" xml:space="preserve">void ClassX::foo(const TDesC&amp; anArg);</codeblock> <p>The use of <codeph>TDesC</codeph> ensures that the data cannot be modified
+through the descriptor; <codeph>const</codeph> is an extra guarantee that
+the data cannot be changed.</p> <p>If the interface is to handle explicit
+8 bit or explicit 16 bit data, regardless of the build variant, then use <codeph>TDesC8</codeph> or <codeph>TDesC16</codeph> instead.</p> </section>
+</conbody></concept>
\ No newline at end of file