diff options
Diffstat (limited to 'Doc/Manual/CPlusPlus11.html')
-rw-r--r-- | Doc/Manual/CPlusPlus11.html | 49 |
1 files changed, 22 insertions, 27 deletions
diff --git a/Doc/Manual/CPlusPlus11.html b/Doc/Manual/CPlusPlus11.html index 714845bba..a4845832e 100644 --- a/Doc/Manual/CPlusPlus11.html +++ b/Doc/Manual/CPlusPlus11.html @@ -29,7 +29,7 @@ <li><a href="#CPlusPlus11_strongly_typed_enumerations">Strongly typed enumerations</a> <li><a href="#CPlusPlus11_double_angle_brackets">Double angle brackets</a> <li><a href="#CPlusPlus11_explicit_conversion_operators">Explicit conversion operators</a> -<li><a href="#CPlusPlus11_alias_templates">Alias templates</a> +<li><a href="#CPlusPlus11_alias_templates">Type alias and alias templates</a> <li><a href="#CPlusPlus11_unrestricted_unions">Unrestricted unions</a> <li><a href="#CPlusPlus11_variadic_templates">Variadic templates</a> <li><a href="#CPlusPlus11_new_string_literals">New string literals</a> @@ -603,10 +603,30 @@ Conversion operators either with or without <tt>explicit</tt> need renaming to a them available as a normal proxy method. </p> -<H3><a name="CPlusPlus11_alias_templates">7.2.16 Alias templates</a></H3> +<H3><a name="CPlusPlus11_alias_templates">7.2.16 Type alias and alias templates</a></H3> <p> +A type alias is a statement of the form: +</p> + +<div class="code"><pre> +using PFD = void (*)(double); // New introduced syntax +</pre></div> + +<p> +which is equivalent to the old style typedef: +</p> + +<div class="code"><pre> +typedef void (*PFD)(double); // The old style +</pre></div> + +<p> +SWIG supports type aliasing. +</p> + +<p> The following is an example of an alias template: <div class="code"><pre> @@ -632,31 +652,6 @@ example.i:13: Warning 342: The 'using' keyword in template aliasing is not fully </pre> </div> -<p> -Similarly for non-template type aliasing: -</p> - -<div class="code"><pre> -using PFD = void (*)(double); // New introduced syntax -</pre></div> - -<p> -A warning will be issued: -</p> - -<div class="shell"> -<pre> -example.i:17: Warning 341: The 'using' keyword in type aliasing is not fully supported yet. -</pre> -</div> - - -<p>The equivalent old style typedefs can be used as a workaround:</p> - -<div class="code"><pre> -typedef void (*PFD)(double); // The old style -</pre></div> - <H3><a name="CPlusPlus11_unrestricted_unions">7.2.17 Unrestricted unions</a></H3> |