FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
python/pyste/doc/smart_pointers.html at develop · XLTools/python · GitHub
Uh oh!
There was an error while loading.
Please reload this page
.
XLTools
/
python
Public
forked from
boostorg/python
Notifications
You must be signed in to change notification settings
Fork
0
Star
0
Code
Pull requests
0
Actions
Projects
Wiki
Security and quality
0
Insights
Additional navigation options
Code
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
python
/
pyste
/
doc
/
smart_pointers.html
Copy path
More file actions
More file actions
Latest commit
History
History
History
84 lines (82 loc) · 5.81 KB
Breadcrumbs
python
/
pyste
/
doc
/
smart_pointers.html
Copy path
File metadata and controls
84 lines (82 loc) · 5.81 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<
html
>
<
head
>
<!-- Generated by the Spirit (http://spirit.sf.net) QuickDoc -->
<
title
>
Smart Pointers
</
title
>
<
link
rel
="
stylesheet
"
href
="
theme/style.css
"
type
="
text/css
"
>
<
link
rel
="
prev
"
href
="
exporting_an_entire_header.html
"
>
<
link
rel
="
next
"
href
="
global_variables.html
"
>
</
head
>
<
body
>
<
table
width
="
100%
"
height
="
48
"
border
="
0
"
cellspacing
="
2
"
>
<
tr
>
<
td
>
<
img
src
="
../../../../boost.png
"
>
</
td
>
<
td
width
="
85%
"
>
<
font
size
="
6
"
face
="
Verdana, Arial, Helvetica, sans-serif
"
>
<
b
>
Smart Pointers
</
b
>
</
font
>
</
td
>
</
tr
>
</
table
>
<
br
>
<
table
border
="
0
"
>
<
tr
>
<
td
width
="
30
"
>
<
a
href
="
../index.html
"
>
<
img
src
="
theme/u_arr.gif
"
border
="
0
"
>
</
a
>
</
td
>
<
td
width
="
30
"
>
<
a
href
="
exporting_an_entire_header.html
"
>
<
img
src
="
theme/l_arr.gif
"
border
="
0
"
>
</
a
>
</
td
>
<
td
width
="
20
"
>
<
a
href
="
global_variables.html
"
>
<
img
src
="
theme/r_arr.gif
"
border
="
0
"
>
</
a
>
</
td
>
</
tr
>
</
table
>
<
p
>
Pyste for now has manual support for smart pointers. Suppose:
</
p
>
<
code
>
<
pre
>
<
span
class
=
keyword
>
struct
</
span
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
{
</
span
>
<
span
class
=
keyword
>
int
</
span
>
<
span
class
=
identifier
>
value
</
span
>
<
span
class
=
special
>
;
};
</
span
>
<
span
class
=
identifier
>
boost
</
span
>
<
span
class
=
special
>
::
</
span
>
<
span
class
=
identifier
>
shared_ptr
</
span
>
<
span
class
=
special
>
<
</
span
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
>
</
span
>
<
span
class
=
identifier
>
newC
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
keyword
>
int
</
span
>
<
span
class
=
identifier
>
value
</
span
>
<
span
class
=
special
>
)
{
</
span
>
<
span
class
=
identifier
>
boost
</
span
>
<
span
class
=
special
>
::
</
span
>
<
span
class
=
identifier
>
shared_ptr
</
span
>
<
span
class
=
special
>
<
</
span
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
>
</
span
>
<
span
class
=
identifier
>
c
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
keyword
>
new
</
span
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
() );
</
span
>
<
span
class
=
identifier
>
c
</
span
>
<
span
class
=
special
>
->
</
span
>
<
span
class
=
identifier
>
value
</
span
>
<
span
class
=
special
>
=
</
span
>
<
span
class
=
identifier
>
value
</
span
>
<
span
class
=
special
>
;
</
span
>
<
span
class
=
keyword
>
return
</
span
>
<
span
class
=
identifier
>
c
</
span
>
<
span
class
=
special
>
;
}
</
span
>
<
span
class
=
keyword
>
void
</
span
>
<
span
class
=
identifier
>
printC
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
identifier
>
boost
</
span
>
<
span
class
=
special
>
::
</
span
>
<
span
class
=
identifier
>
shared_ptr
</
span
>
<
span
class
=
special
>
<
</
span
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
>
</
span
>
<
span
class
=
identifier
>
c
</
span
>
<
span
class
=
special
>
)
{
</
span
>
<
span
class
=
identifier
>
std
</
span
>
<
span
class
=
special
>
::
</
span
>
<
span
class
=
identifier
>
cout
</
span
>
<
span
class
=
special
>
<<
</
span
>
<
span
class
=
identifier
>
c
</
span
>
<
span
class
=
special
>
->
</
span
>
<
span
class
=
identifier
>
value
</
span
>
<
span
class
=
special
>
<<
</
span
>
<
span
class
=
identifier
>
std
</
span
>
<
span
class
=
special
>
::
</
span
>
<
span
class
=
identifier
>
endl
</
span
>
<
span
class
=
special
>
;
}
</
span
>
</
pre
>
</
code
>
<
p
>
To make
<
tt
>
newC
</
tt
>
and
<
tt
>
printC
</
tt
>
work correctly, you have to tell Pyste that a
convertor for
<
tt
>
boost::shared_ptr<C>
</
tt
>
is needed.
</
p
>
<
code
>
<
pre
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
=
</
span
>
<
span
class
=
identifier
>
Class
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
literal
>
'C'
</
span
>
<
span
class
=
special
>
,
</
span
>
<
span
class
=
literal
>
'C.h'
</
span
>
<
span
class
=
special
>
)
</
span
>
<
span
class
=
identifier
>
use_shared_ptr
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
)
</
span
>
<
span
class
=
identifier
>
Function
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
literal
>
'newC'
</
span
>
<
span
class
=
special
>
,
</
span
>
<
span
class
=
literal
>
'C.h'
</
span
>
<
span
class
=
special
>
)
</
span
>
<
span
class
=
identifier
>
Function
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
literal
>
'printC'
</
span
>
<
span
class
=
special
>
,
</
span
>
<
span
class
=
literal
>
'C.h'
</
span
>
<
span
class
=
special
>
)
</
span
>
</
pre
>
</
code
>
<
p
>
For
<
tt
>
std::auto_ptr
</
tt
>
's, use the function
<
tt
>
use_auto_ptr
</
tt
>
.
</
p
>
<
p
>
This system is temporary, and in the future the converters will automatically be
exported if needed, without the need to tell Pyste about them explicitly.
</
p
>
<
a
name
="
holders
"
>
</
a
>
<
h2
>
Holders
</
h2
>
<
p
>
If only the converter for the smart pointers is not enough and you need to
specify the smart pointer as the holder for a class, use the functions
<
tt
>
hold_with_shared_ptr
</
tt
>
and
<
tt
>
hold_with_auto_ptr
</
tt
>
:
</
p
>
<
code
>
<
pre
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
=
</
span
>
<
span
class
=
identifier
>
Class
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
literal
>
'C'
</
span
>
<
span
class
=
special
>
,
</
span
>
<
span
class
=
literal
>
'C.h'
</
span
>
<
span
class
=
special
>
)
</
span
>
<
span
class
=
identifier
>
hold_with_shared_ptr
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
identifier
>
C
</
span
>
<
span
class
=
special
>
)
</
span
>
<
span
class
=
identifier
>
Function
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
literal
>
'newC'
</
span
>
<
span
class
=
special
>
,
</
span
>
<
span
class
=
literal
>
'C.h'
</
span
>
<
span
class
=
special
>
)
</
span
>
<
span
class
=
identifier
>
Function
</
span
>
<
span
class
=
special
>
(
</
span
>
<
span
class
=
literal
>
'printC'
</
span
>
<
span
class
=
special
>
,
</
span
>
<
span
class
=
literal
>
'C.h'
</
span
>
<
span
class
=
special
>
)
</
span
>
</
pre
>
</
code
>
<
table
border
="
0
"
>
<
tr
>
<
td
width
="
30
"
>
<
a
href
="
../index.html
"
>
<
img
src
="
theme/u_arr.gif
"
border
="
0
"
>
</
a
>
</
td
>
<
td
width
="
30
"
>
<
a
href
="
exporting_an_entire_header.html
"
>
<
img
src
="
theme/l_arr.gif
"
border
="
0
"
>
</
a
>
</
td
>
<
td
width
="
20
"
>
<
a
href
="
global_variables.html
"
>
<
img
src
="
theme/r_arr.gif
"
border
="
0
"
>
</
a
>
</
td
>
</
tr
>
</
table
>
<
br
>
<
hr
size
="
1
"
>
<
p
class
="
copyright
"
>
Copyright © 2003 Bruno da Silva de Oliveira
<
br
>
Copyright © 2002-2003 Joel de Guzman
<
br
>
<
br
>
<
font
size
="
2
"
>
Distributed under
the Boost Software License, Version 1.0. (See accompanying file
LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
</
font
>
</
p
>
</
body
>
</
html
>
Back
|
FazBrowse Home
|
New Git URL