Update docs for shared_ptr
This commit is contained in:
parent
e12277a469
commit
803ba97a83
6 changed files with 101 additions and 2 deletions
|
|
@ -847,8 +847,8 @@
|
|||
<li><a href="Go.html#Go_examples">Examples</a>
|
||||
<li><a href="Go.html#Go_running_swig">Running SWIG with Go</a>
|
||||
<ul>
|
||||
<li><a href="Go.html#Go_commandline">Additional Commandline Options</a>
|
||||
<li><a href="Go.html#Go_outputs">Go Output Files</a>
|
||||
<li><a href="Go.html#Go_commandline">Go-specific Commandline Options</a>
|
||||
<li><a href="Go.html#Go_outputs">Generated Wrapper Files</a>
|
||||
</ul>
|
||||
<li><a href="Go.html#Go_basic_tour">A tour of basic C/C++ wrapping</a>
|
||||
<ul>
|
||||
|
|
@ -863,6 +863,16 @@
|
|||
</ul>
|
||||
<li><a href="Go.html#Go_templates">Go Templates</a>
|
||||
<li><a href="Go.html#Go_director_classes">Go Director Classes</a>
|
||||
<ul>
|
||||
<li><a href="Go.html#Go_director_example_cpp_code">Example C++ code</a>
|
||||
<li><a href="Go.html#Go_director_enable">Enable director feature</a>
|
||||
<li><a href="Go.html#Go_director_ctor_dtor">Constructor and destructor</a>
|
||||
<li><a href="Go.html#Go_director_overriding">Override virtual methods</a>
|
||||
<li><a href="Go.html#Go_director_base_methods">Call base methods</a>
|
||||
<li><a href="Go.html#Go_director_subclass">Subclass via embedding</a>
|
||||
<li><a href="Go.html#Go_director_finalizer">Memory management with runtime.SetFinalizer</a>
|
||||
<li><a href="Go.html#Go_director_foobargo_class">Complete FooBarGo example class</a>
|
||||
</ul>
|
||||
<li><a href="Go.html#Go_primitive_type_mappings">Default Go primitive type mappings</a>
|
||||
<li><a href="Go.html#Go_output_arguments">Output arguments</a>
|
||||
<li><a href="Go.html#Go_adding_additional_code">Adding additional go code</a>
|
||||
|
|
@ -955,6 +965,10 @@
|
|||
<li><a href="Java.html#Java_namespaces">C++ namespaces</a>
|
||||
<li><a href="Java.html#Java_templates">C++ templates</a>
|
||||
<li><a href="Java.html#Java_smart_pointers">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="Java.html#Java_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="Java.html#Java_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
</ul>
|
||||
<li><a href="Java.html#Java_further_details">Further details on the generated Java classes</a>
|
||||
<ul>
|
||||
|
|
@ -1312,6 +1326,10 @@
|
|||
<li><a href="Octave.html#Octave_nn19">Class extension with %extend</a>
|
||||
<li><a href="Octave.html#Octave_nn20">C++ templates</a>
|
||||
<li><a href="Octave.html#Octave_nn21">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="Octave.html#Octave_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="Octave.html#Octave_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
<li><a href="Octave.html#Octave_nn22">Directors (calling Octave from C++ code)</a>
|
||||
<li><a href="Octave.html#Octave_nn23">Threads</a>
|
||||
<li><a href="Octave.html#Octave_nn24">Memory management</a>
|
||||
|
|
@ -1496,6 +1514,10 @@
|
|||
<li><a href="Python.html#Python_nn25">C++ namespaces</a>
|
||||
<li><a href="Python.html#Python_nn26">C++ templates</a>
|
||||
<li><a href="Python.html#Python_nn27">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="Python.html#Python_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="Python.html#Python_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
<li><a href="Python.html#Python_nn27a">C++ reference counted objects</a>
|
||||
</ul>
|
||||
<li><a href="Python.html#Python_nn28">Further details on the Python class interface</a>
|
||||
|
|
@ -1633,6 +1655,10 @@
|
|||
<li><a href="Ruby.html#Ruby_C_STL_Functors">C++ STL Functors</a>
|
||||
<li><a href="Ruby.html#Ruby_C_Iterators">C++ STL Iterators</a>
|
||||
<li><a href="Ruby.html#Ruby_nn24">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="Ruby.html#Ruby_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="Ruby.html#Ruby_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
<li><a href="Ruby.html#Ruby_nn25">Cross-Language Polymorphism</a>
|
||||
<ul>
|
||||
<li><a href="Ruby.html#Ruby_nn26">Exception Unrolling</a>
|
||||
|
|
|
|||
|
|
@ -618,6 +618,7 @@ completely to avoid common pitfalls with directors in Go.
|
|||
|
||||
<H4><a name="Go_director_example_cpp_code"></a>23.4.7.1 Example C++ code</H4>
|
||||
|
||||
|
||||
<p>
|
||||
The step by step guide is based on two example C++ classes. FooBarAbstract is
|
||||
an abstract C++ class and the FooBarCpp class inherits from it. This guide
|
||||
|
|
|
|||
|
|
@ -52,6 +52,10 @@
|
|||
<li><a href="#Java_namespaces">C++ namespaces</a>
|
||||
<li><a href="#Java_templates">C++ templates</a>
|
||||
<li><a href="#Java_smart_pointers">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="#Java_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="#Java_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
</ul>
|
||||
<li><a href="#Java_further_details">Further details on the generated Java classes</a>
|
||||
<ul>
|
||||
|
|
@ -1998,6 +2002,20 @@ More details can be found in the <a href="SWIGPlus.html#SWIGPlus">SWIG and C++</
|
|||
<H3><a name="Java_smart_pointers"></a>25.3.15 C++ Smart Pointers</H3>
|
||||
|
||||
|
||||
<H4><a name="Java_smart_pointers_shared_ptr"></a>25.3.15.1 The shared_ptr Smart Pointer</H4>
|
||||
|
||||
|
||||
<p>
|
||||
The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
|
||||
implementation, <tt>boost::shared_ptr</tt>.
|
||||
Both of these are available for Java in the SWIG library and usage is outlined
|
||||
in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
|
||||
</p>
|
||||
|
||||
|
||||
<H4><a name="Java_smart_pointers_generic"></a>25.3.15.2 Generic Smart Pointers</H4>
|
||||
|
||||
|
||||
<p>
|
||||
In certain C++ programs, it is common to use classes that have been wrapped by
|
||||
so-called "smart pointers." Generally, this involves the use of a template class
|
||||
|
|
|
|||
|
|
@ -33,6 +33,10 @@
|
|||
<li><a href="#Octave_nn19">Class extension with %extend</a>
|
||||
<li><a href="#Octave_nn20">C++ templates</a>
|
||||
<li><a href="#Octave_nn21">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="#Octave_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="#Octave_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
<li><a href="#Octave_nn22">Directors (calling Octave from C++ code)</a>
|
||||
<li><a href="#Octave_nn23">Threads</a>
|
||||
<li><a href="#Octave_nn24">Memory management</a>
|
||||
|
|
@ -718,6 +722,20 @@ ans =
|
|||
<H3><a name="Octave_nn21"></a>32.3.12 C++ Smart Pointers</H3>
|
||||
|
||||
|
||||
<H4><a name="Octave_smart_pointers_shared_ptr"></a>32.3.12.1 The shared_ptr Smart Pointer</H4>
|
||||
|
||||
|
||||
<p>
|
||||
The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
|
||||
implementation, <tt>boost::shared_ptr</tt>.
|
||||
Both of these are available for Octave in the SWIG library and usage is outlined
|
||||
in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
|
||||
</p>
|
||||
|
||||
|
||||
<H4><a name="Octave_smart_pointers_generic"></a>32.3.12.2 Generic Smart Pointers</H4>
|
||||
|
||||
|
||||
<p>
|
||||
C++ smart pointers are fully supported as in other modules.
|
||||
</p>
|
||||
|
|
|
|||
|
|
@ -38,6 +38,10 @@
|
|||
<li><a href="#Python_nn25">C++ namespaces</a>
|
||||
<li><a href="#Python_nn26">C++ templates</a>
|
||||
<li><a href="#Python_nn27">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="#Python_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="#Python_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
<li><a href="#Python_nn27a">C++ reference counted objects</a>
|
||||
</ul>
|
||||
<li><a href="#Python_nn28">Further details on the Python class interface</a>
|
||||
|
|
@ -2000,6 +2004,20 @@ examples will appear later.
|
|||
<H3><a name="Python_nn27"></a>36.3.14 C++ Smart Pointers</H3>
|
||||
|
||||
|
||||
<H4><a name="Python_smart_pointers_shared_ptr"></a>36.3.14.1 The shared_ptr Smart Pointer</H4>
|
||||
|
||||
|
||||
<p>
|
||||
The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
|
||||
implementation, <tt>boost::shared_ptr</tt>.
|
||||
Both of these are available for Python in the SWIG library and usage is outlined
|
||||
in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
|
||||
</p>
|
||||
|
||||
|
||||
<H4><a name="Python_smart_pointers_generic"></a>36.3.14.2 Generic Smart Pointers</H4>
|
||||
|
||||
|
||||
<p>
|
||||
In certain C++ programs, it is common to use classes that have been wrapped by
|
||||
so-called "smart pointers." Generally, this involves the use of a template class
|
||||
|
|
|
|||
|
|
@ -42,6 +42,10 @@
|
|||
<li><a href="#Ruby_C_STL_Functors">C++ STL Functors</a>
|
||||
<li><a href="#Ruby_C_Iterators">C++ STL Iterators</a>
|
||||
<li><a href="#Ruby_nn24">C++ Smart Pointers</a>
|
||||
<ul>
|
||||
<li><a href="#Ruby_smart_pointers_shared_ptr">The shared_ptr Smart Pointer</a>
|
||||
<li><a href="#Ruby_smart_pointers_generic">Generic Smart Pointers</a>
|
||||
</ul>
|
||||
<li><a href="#Ruby_nn25">Cross-Language Polymorphism</a>
|
||||
<ul>
|
||||
<li><a href="#Ruby_nn26">Exception Unrolling</a>
|
||||
|
|
@ -1461,6 +1465,20 @@ i
|
|||
<H3><a name="Ruby_nn24"></a>38.3.16 C++ Smart Pointers</H3>
|
||||
|
||||
|
||||
<H4><a name="Ruby_smart_pointers_shared_ptr"></a>38.3.16.1 The shared_ptr Smart Pointer</H4>
|
||||
|
||||
|
||||
<p>
|
||||
The C++11 standard provides <tt>std::shared_ptr</tt> which was derived from the Boost
|
||||
implementation, <tt>boost::shared_ptr</tt>.
|
||||
Both of these are available for Ruby in the SWIG library and usage is outlined
|
||||
in the <a href="Library.html#Library_std_shared_ptr">shared_ptr smart pointer</a> library section.
|
||||
</p>
|
||||
|
||||
|
||||
<H4><a name="Ruby_smart_pointers_generic"></a>38.3.16.2 Generic Smart Pointers</H4>
|
||||
|
||||
|
||||
<p> In certain C++ programs, it is common to use classes that
|
||||
have been wrapped by so-called "smart pointers." Generally, this
|
||||
involves the use of a template class that implements <tt>operator->()</tt>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue