1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns=
"http://www.w3.org/1999/xhtml">
4 <meta http-equiv=
"Content-Type" content=
"text/xhtml;charset=UTF-8"/>
5 <meta http-equiv=
"X-UA-Compatible" content=
"IE=9"/>
6 <meta name=
"generator" content=
"Doxygen 1.8.6"/>
7 <title>Boost.Locale: boost::locale::hold_ptr
< T
> Class Template Reference
</title>
8 <link href=
"tabs.css" rel=
"stylesheet" type=
"text/css"/>
9 <script type=
"text/javascript" src=
"jquery.js"></script>
10 <script type=
"text/javascript" src=
"dynsections.js"></script>
11 <link href=
"navtree.css" rel=
"stylesheet" type=
"text/css"/>
12 <script type=
"text/javascript" src=
"resize.js"></script>
13 <script type=
"text/javascript" src=
"navtree.js"></script>
14 <script type=
"text/javascript">
15 $(document).ready(initResizable);
16 $(window).load(resizeHeight);
18 <link href=
"doxygen.css" rel=
"stylesheet" type=
"text/css" />
21 <div id=
"top"><!-- do not remove this div, it is closed by doxygen! -->
23 <table cellspacing=
"0" cellpadding=
"0">
25 <tr style=
"height: 56px;">
26 <td id=
"projectlogo"><img alt=
"Logo" src=
"boost-small.png"/></td>
27 <td style=
"padding-left: 0.5em;">
28 <div id=
"projectname">Boost.Locale
35 <!-- end header part -->
36 <!-- Generated by Doxygen 1.8.6 -->
37 <div id=
"navrow1" class=
"tabs">
39 <li><a href=
"index.html"><span>Main
 Page
</span></a></li>
40 <li><a href=
"pages.html"><span>Related
 Pages
</span></a></li>
41 <li><a href=
"modules.html"><span>Modules
</span></a></li>
42 <li><a href=
"namespaces.html"><span>Namespaces
</span></a></li>
43 <li class=
"current"><a href=
"annotated.html"><span>Classes
</span></a></li>
44 <li><a href=
"files.html"><span>Files
</span></a></li>
45 <li><a href=
"examples.html"><span>Examples
</span></a></li>
48 <div id=
"navrow2" class=
"tabs2">
50 <li><a href=
"annotated.html"><span>Class
 List
</span></a></li>
51 <li><a href=
"hierarchy.html"><span>Class
 Hierarchy
</span></a></li>
52 <li><a href=
"functions.html"><span>Class
 Members
</span></a></li>
56 <div id=
"side-nav" class=
"ui-resizable side-nav-resizable">
58 <div id=
"nav-tree-contents">
59 <div id=
"nav-sync" class=
"sync"></div>
62 <div id=
"splitbar" style=
"-moz-user-select:none;"
63 class=
"ui-resizable-handle">
66 <script type=
"text/javascript">
67 $(document).ready(function(){initNavTree('classboost_1_1locale_1_1hold__ptr.html','');});
69 <div id=
"doc-content">
72 <a href=
"#pub-methods">Public Member Functions
</a> |
73 <a href=
"classboost_1_1locale_1_1hold__ptr-members.html">List of all members
</a> </div>
74 <div class=
"headertitle">
75 <div class=
"title">boost::locale::hold_ptr
< T
> Class Template Reference
</div> </div>
77 <div class=
"contents">
79 <p>a smart pointer similar to std::auto_ptr but it is non-copyable and the underlying object has the same constness as the pointer itself (unlike an ordinary pointer).
80 <a href=
"classboost_1_1locale_1_1hold__ptr.html#details">More...
</a></p>
82 <p><code>#include
<<a class=
"el" href=
"hold__ptr_8hpp_source.html">boost/locale/hold_ptr.hpp
</a>></code></p>
83 <table class=
"memberdecls">
84 <tr class=
"heading"><td colspan=
"2"><h2 class=
"groupheader"><a name=
"pub-methods"></a>
85 Public Member Functions
</h2></td></tr>
86 <tr class=
"memitem:a681ee3d579435f9f2f171b830c402072"><td class=
"memItemLeft" align=
"right" valign=
"top"> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a681ee3d579435f9f2f171b830c402072">hold_ptr
</a> ()
</td></tr>
87 <tr class=
"separator:a681ee3d579435f9f2f171b830c402072"><td class=
"memSeparator" colspan=
"2"> </td></tr>
88 <tr class=
"memitem:a0007514dc0410ccb16adf01c56874f52"><td class=
"memItemLeft" align=
"right" valign=
"top"> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a0007514dc0410ccb16adf01c56874f52">hold_ptr
</a> (T *v)
</td></tr>
89 <tr class=
"separator:a0007514dc0410ccb16adf01c56874f52"><td class=
"memSeparator" colspan=
"2"> </td></tr>
90 <tr class=
"memitem:aace934e7a8b3f1880d1a06fa85795a48"><td class=
"memItemLeft" align=
"right" valign=
"top"> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#aace934e7a8b3f1880d1a06fa85795a48">~hold_ptr
</a> ()
</td></tr>
91 <tr class=
"separator:aace934e7a8b3f1880d1a06fa85795a48"><td class=
"memSeparator" colspan=
"2"> </td></tr>
92 <tr class=
"memitem:a907a9385c1a15dab07aade7466620bf6"><td class=
"memItemLeft" align=
"right" valign=
"top">T const *
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a907a9385c1a15dab07aade7466620bf6">get
</a> () const
</td></tr>
93 <tr class=
"separator:a907a9385c1a15dab07aade7466620bf6"><td class=
"memSeparator" colspan=
"2"> </td></tr>
94 <tr class=
"memitem:a30dbc88eb9fde35198774f3ace282712"><td class=
"memItemLeft" align=
"right" valign=
"top">T *
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a30dbc88eb9fde35198774f3ace282712">get
</a> ()
</td></tr>
95 <tr class=
"separator:a30dbc88eb9fde35198774f3ace282712"><td class=
"memSeparator" colspan=
"2"> </td></tr>
96 <tr class=
"memitem:a2c8a19e35ff3c57100b24371854f31b7"><td class=
"memItemLeft" align=
"right" valign=
"top">T const
& </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a2c8a19e35ff3c57100b24371854f31b7">operator*
</a> () const
</td></tr>
97 <tr class=
"separator:a2c8a19e35ff3c57100b24371854f31b7"><td class=
"memSeparator" colspan=
"2"> </td></tr>
98 <tr class=
"memitem:af99f3719b755b787b022253aa6f8d1c0"><td class=
"memItemLeft" align=
"right" valign=
"top">T
& </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#af99f3719b755b787b022253aa6f8d1c0">operator*
</a> ()
</td></tr>
99 <tr class=
"separator:af99f3719b755b787b022253aa6f8d1c0"><td class=
"memSeparator" colspan=
"2"> </td></tr>
100 <tr class=
"memitem:a7ae6b54ed5471dd9560904c7ff8a7971"><td class=
"memItemLeft" align=
"right" valign=
"top">T const *
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a7ae6b54ed5471dd9560904c7ff8a7971">operator-
></a> () const
</td></tr>
101 <tr class=
"separator:a7ae6b54ed5471dd9560904c7ff8a7971"><td class=
"memSeparator" colspan=
"2"> </td></tr>
102 <tr class=
"memitem:a474f2619452b63408e1e761f414328f4"><td class=
"memItemLeft" align=
"right" valign=
"top">T *
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a474f2619452b63408e1e761f414328f4">operator-
></a> ()
</td></tr>
103 <tr class=
"separator:a474f2619452b63408e1e761f414328f4"><td class=
"memSeparator" colspan=
"2"> </td></tr>
104 <tr class=
"memitem:a2d7b2957c037589b65b2cdd4f61ebe03"><td class=
"memItemLeft" align=
"right" valign=
"top">T *
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a2d7b2957c037589b65b2cdd4f61ebe03">release
</a> ()
</td></tr>
105 <tr class=
"separator:a2d7b2957c037589b65b2cdd4f61ebe03"><td class=
"memSeparator" colspan=
"2"> </td></tr>
106 <tr class=
"memitem:acb84b86bb220d663ffe13e5be9cfd72e"><td class=
"memItemLeft" align=
"right" valign=
"top">void
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#acb84b86bb220d663ffe13e5be9cfd72e">reset
</a> (T *p=
0)
</td></tr>
107 <tr class=
"separator:acb84b86bb220d663ffe13e5be9cfd72e"><td class=
"memSeparator" colspan=
"2"> </td></tr>
108 <tr class=
"memitem:a3e2640b5df80f86aeb68a6ee78dfd6f9"><td class=
"memItemLeft" align=
"right" valign=
"top"><a class=
"anchor" id=
"a3e2640b5df80f86aeb68a6ee78dfd6f9"></a>
109 void
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html#a3e2640b5df80f86aeb68a6ee78dfd6f9">swap
</a> (
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">hold_ptr
</a> &other)
</td></tr>
110 <tr class=
"memdesc:a3e2640b5df80f86aeb68a6ee78dfd6f9"><td class=
"mdescLeft"> </td><td class=
"mdescRight">Swap two pointers.
<br/></td></tr>
111 <tr class=
"separator:a3e2640b5df80f86aeb68a6ee78dfd6f9"><td class=
"memSeparator" colspan=
"2"> </td></tr>
113 <a name=
"details" id=
"details"></a><h2 class=
"groupheader">Detailed Description
</h2>
114 <div class=
"textblock"><h3>template
<typename T
><br/>
115 class boost::locale::hold_ptr
< T
></h3>
117 <p>a smart pointer similar to std::auto_ptr but it is non-copyable and the underlying object has the same constness as the pointer itself (unlike an ordinary pointer).
</p>
118 </div><h2 class=
"groupheader">Constructor
& Destructor Documentation
</h2>
119 <a class=
"anchor" id=
"a681ee3d579435f9f2f171b830c402072"></a>
120 <div class=
"memitem">
121 <div class=
"memproto">
122 <div class=
"memtemplate">
123 template
<typename T
> </div>
124 <table class=
"mlabels">
126 <td class=
"mlabels-left">
127 <table class=
"memname">
129 <td class=
"memname"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">hold_ptr
</a> </td>
131 <td class=
"paramname"></td><td>)
</td>
136 <td class=
"mlabels-right">
137 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
140 </div><div class=
"memdoc">
141 <p>Create new empty pointer
</p>
145 <a class=
"anchor" id=
"a0007514dc0410ccb16adf01c56874f52"></a>
146 <div class=
"memitem">
147 <div class=
"memproto">
148 <div class=
"memtemplate">
149 template
<typename T
> </div>
150 <table class=
"mlabels">
152 <td class=
"mlabels-left">
153 <table class=
"memname">
155 <td class=
"memname"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">hold_ptr
</a> </td>
157 <td class=
"paramtype">T *
 </td>
158 <td class=
"paramname"><em>v
</em></td><td>)
</td>
163 <td class=
"mlabels-right">
164 <span class=
"mlabels"><span class=
"mlabel">inline
</span><span class=
"mlabel">explicit
</span></span> </td>
167 </div><div class=
"memdoc">
168 <p>Create a pointer that holds
<em>v
</em>, ownership is transferred to smart pointer
</p>
172 <a class=
"anchor" id=
"aace934e7a8b3f1880d1a06fa85795a48"></a>
173 <div class=
"memitem">
174 <div class=
"memproto">
175 <div class=
"memtemplate">
176 template
<typename T
> </div>
177 <table class=
"mlabels">
179 <td class=
"mlabels-left">
180 <table class=
"memname">
182 <td class=
"memname"><a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::~
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">hold_ptr
</a> </td>
184 <td class=
"paramname"></td><td>)
</td>
189 <td class=
"mlabels-right">
190 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
193 </div><div class=
"memdoc">
194 <p>Destroy smart pointer and the object it owns.
</p>
198 <h2 class=
"groupheader">Member Function Documentation
</h2>
199 <a class=
"anchor" id=
"a907a9385c1a15dab07aade7466620bf6"></a>
200 <div class=
"memitem">
201 <div class=
"memproto">
202 <div class=
"memtemplate">
203 template
<typename T
> </div>
204 <table class=
"mlabels">
206 <td class=
"mlabels-left">
207 <table class=
"memname">
209 <td class=
"memname">T const*
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::get
</td>
211 <td class=
"paramname"></td><td>)
</td>
216 <td class=
"mlabels-right">
217 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
220 </div><div class=
"memdoc">
221 <p>Get a const pointer to the object
</p>
225 <a class=
"anchor" id=
"a30dbc88eb9fde35198774f3ace282712"></a>
226 <div class=
"memitem">
227 <div class=
"memproto">
228 <div class=
"memtemplate">
229 template
<typename T
> </div>
230 <table class=
"mlabels">
232 <td class=
"mlabels-left">
233 <table class=
"memname">
235 <td class=
"memname">T*
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::get
</td>
237 <td class=
"paramname"></td><td>)
</td>
242 <td class=
"mlabels-right">
243 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
246 </div><div class=
"memdoc">
247 <p>Get a mutable pointer to the object
</p>
251 <a class=
"anchor" id=
"a2c8a19e35ff3c57100b24371854f31b7"></a>
252 <div class=
"memitem">
253 <div class=
"memproto">
254 <div class=
"memtemplate">
255 template
<typename T
> </div>
256 <table class=
"mlabels">
258 <td class=
"mlabels-left">
259 <table class=
"memname">
261 <td class=
"memname">T const
& <a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::operator*
</td>
263 <td class=
"paramname"></td><td>)
</td>
268 <td class=
"mlabels-right">
269 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
272 </div><div class=
"memdoc">
273 <p>Get a const reference to the object
</p>
277 <a class=
"anchor" id=
"af99f3719b755b787b022253aa6f8d1c0"></a>
278 <div class=
"memitem">
279 <div class=
"memproto">
280 <div class=
"memtemplate">
281 template
<typename T
> </div>
282 <table class=
"mlabels">
284 <td class=
"mlabels-left">
285 <table class=
"memname">
287 <td class=
"memname">T
& <a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::operator*
</td>
289 <td class=
"paramname"></td><td>)
</td>
294 <td class=
"mlabels-right">
295 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
298 </div><div class=
"memdoc">
299 <p>Get a mutable reference to the object
</p>
303 <a class=
"anchor" id=
"a7ae6b54ed5471dd9560904c7ff8a7971"></a>
304 <div class=
"memitem">
305 <div class=
"memproto">
306 <div class=
"memtemplate">
307 template
<typename T
> </div>
308 <table class=
"mlabels">
310 <td class=
"mlabels-left">
311 <table class=
"memname">
313 <td class=
"memname">T const*
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::operator-
> </td>
315 <td class=
"paramname"></td><td>)
</td>
320 <td class=
"mlabels-right">
321 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
324 </div><div class=
"memdoc">
325 <p>Get a const pointer to the object
</p>
329 <a class=
"anchor" id=
"a474f2619452b63408e1e761f414328f4"></a>
330 <div class=
"memitem">
331 <div class=
"memproto">
332 <div class=
"memtemplate">
333 template
<typename T
> </div>
334 <table class=
"mlabels">
336 <td class=
"mlabels-left">
337 <table class=
"memname">
339 <td class=
"memname">T*
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::operator-
> </td>
341 <td class=
"paramname"></td><td>)
</td>
346 <td class=
"mlabels-right">
347 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
350 </div><div class=
"memdoc">
351 <p>Get a mutable pointer to the object
</p>
355 <a class=
"anchor" id=
"a2d7b2957c037589b65b2cdd4f61ebe03"></a>
356 <div class=
"memitem">
357 <div class=
"memproto">
358 <div class=
"memtemplate">
359 template
<typename T
> </div>
360 <table class=
"mlabels">
362 <td class=
"mlabels-left">
363 <table class=
"memname">
365 <td class=
"memname">T*
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::release
</td>
367 <td class=
"paramname"></td><td>)
</td>
372 <td class=
"mlabels-right">
373 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
376 </div><div class=
"memdoc">
377 <p>Transfer an ownership on the pointer to user
</p>
381 <a class=
"anchor" id=
"acb84b86bb220d663ffe13e5be9cfd72e"></a>
382 <div class=
"memitem">
383 <div class=
"memproto">
384 <div class=
"memtemplate">
385 template
<typename T
> </div>
386 <table class=
"mlabels">
388 <td class=
"mlabels-left">
389 <table class=
"memname">
391 <td class=
"memname">void
<a class=
"el" href=
"classboost_1_1locale_1_1hold__ptr.html">boost::locale::hold_ptr
</a>< T
>::reset
</td>
393 <td class=
"paramtype">T *
 </td>
394 <td class=
"paramname"><em>p
</em> =
<code>0</code></td><td>)
</td>
399 <td class=
"mlabels-right">
400 <span class=
"mlabels"><span class=
"mlabel">inline
</span></span> </td>
403 </div><div class=
"memdoc">
404 <p>Set new value to pointer, previous object is destroyed, ownership on new object is transferred
</p>
408 <hr/>The documentation for this class was generated from the following file:
<ul>
409 <li>boost/locale/
<a class=
"el" href=
"hold__ptr_8hpp_source.html">hold_ptr.hpp
</a></li>
411 </div><!-- contents -->
412 </div><!-- doc-content -->
415 © Copyright
2009-
2012 Artyom Beilis, Distributed under the
<a href=
"http://www.boost.org/LICENSE_1_0.txt">Boost Software License
</a>, Version
1.0.