reference.html 5.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  4. <title>Reference</title>
  5. <link rel="stylesheet" href="../boostbook.css" type="text/css">
  6. <meta name="generator" content="DocBook XSL Stylesheets V1.68.1">
  7. <link rel="start" href="../index.html" title="The Boost C++ Libraries">
  8. <link rel="up" href="../any.html" title="Chapter 1. Boost.Any">
  9. <link rel="prev" href="s02.html" title="Examples">
  10. <link rel="next" href="../bad_any_cast.html" title="Class bad_any_cast">
  11. </head>
  12. <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
  13. <table cellpadding="2" width="100%">
  14. <td valign="top"><img alt="boost.png (6897 bytes)" width="277" height="86" src="../../../boost.png"></td>
  15. <td align="center"><a href="../../../index.htm">Home</a></td>
  16. <td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td>
  17. <td align="center"><a href="../../../people/people.htm">People</a></td>
  18. <td align="center"><a href="../../../more/faq.htm">FAQ</a></td>
  19. <td align="center"><a href="../../../more/index.htm">More</a></td>
  20. </table>
  21. <hr>
  22. <div class="spirit-nav">
  23. <a accesskey="p" href="s02.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../any.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="../bad_any_cast.html"><img src="../images/next.png" alt="Next"></a>
  24. </div>
  25. <div class="section" lang="en">
  26. <div class="titlepage"><div><div><h3 class="title">
  27. <a name="any.reference"></a>Reference</h3></div></div></div>
  28. <div class="toc"><dl>
  29. <dt><span class="section"><a href="reference.html#any.ValueType"><span class="emphasis"><em>ValueType</em></span> requirements</a></span></dt>
  30. <dt><span class="section"><a href="reference.html#header.boost.any.hpp">Header &lt;boost/any.hpp&gt;</a></span></dt>
  31. </dl></div>
  32. <div class="section" lang="en">
  33. <div class="titlepage"><div><div><h4 class="title">
  34. <a name="any.ValueType"></a><span class="emphasis"><em>ValueType</em></span> requirements</h4></div></div></div>
  35. <p>Values are strongly informational objects for which
  36. identity is not significant, i.e. the focus is principally on
  37. their state content and any behavior organized around
  38. that. Another distinguishing feature of values is their
  39. granularity: normally fine-grained objects representing simple
  40. concepts in the system such as quantities.</p>
  41. <p>As the emphasis of a value lies in its state not its
  42. identity, values can be copied and typically assigned one to
  43. another, requiring the explicit or implicit definition of a
  44. public copy constructor and public assignment operator. Values
  45. typically live within other scopes, i.e. within objects or
  46. blocks, rather than on the heap. Values are therefore normally
  47. passed around and manipulated directly as variables or through
  48. references, but not as pointers that emphasize identity and
  49. indirection.</p>
  50. <p>The specific requirements on value types to be used in an
  51. <code class="computeroutput"><a href="../boost/any.html" title="Class any">any</a></code>
  52. are:</p>
  53. <div class="itemizedlist"><ul type="disc" compact>
  54. <li>A <span class="emphasis"><em>ValueType</em></span> is
  55. <span class="emphasis"><em>CopyConstructible</em></span> [20.1.3].</li>
  56. <li>A <span class="emphasis"><em>ValueType</em></span> is
  57. optionally <span class="emphasis"><em>Assignable</em></span> [23.1]. The strong
  58. exception-safety guarantee is required for all forms of
  59. assignment.</li>
  60. <li>The destructor for a
  61. <span class="emphasis"><em>ValueType</em></span> upholds the no-throw
  62. exception-safety guarantee.</li>
  63. </ul></div>
  64. </div>
  65. <div class="section" lang="en">
  66. <div class="titlepage"><div><div><h4 class="title">
  67. <a name="header.boost.any.hpp"></a>Header &lt;<a href="../../../boost/any.hpp" target="_top">boost/any.hpp</a>&gt;</h4></div></div></div>
  68. <pre class="synopsis"><span class="bold"><strong>namespace</strong></span> boost {
  69.   <span class="bold"><strong>class</strong></span> <a href="../bad_any_cast.html" title="Class bad_any_cast">bad_any_cast</a>;
  70.   <span class="bold"><strong>class</strong></span> <a href="../boost/any.html" title="Class any">any</a>;
  71.   <span class="bold"><strong>template</strong></span>&lt;<span class="bold"><strong>typename</strong></span> ValueType&gt; <span class="type">ValueType</span> <a href="../any_cast.html" title="Function any_cast">any_cast</a>(<span class="bold"><strong>const</strong></span> <a href="../boost/any.html" title="Class any">any</a> &amp;);
  72.   <span class="bold"><strong>template</strong></span>&lt;<span class="bold"><strong>typename</strong></span> ValueType&gt; <span class="type"><span class="bold"><strong>const</strong></span> ValueType *</span> <a href="../any_cast.html" title="Function any_cast">any_cast</a>(<span class="bold"><strong>const</strong></span> <a href="../boost/any.html" title="Class any">any</a> *);
  73.   <span class="bold"><strong>template</strong></span>&lt;<span class="bold"><strong>typename</strong></span> ValueType&gt; <span class="type">ValueType *</span> <a href="../any_cast.html" title="Function any_cast">any_cast</a>(<a href="../boost/any.html" title="Class any">any</a> *);
  74. }</pre>
  75. </div>
  76. </div>
  77. <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
  78. <td align="left"></td>
  79. <td align="right"><small>Copyright © 2001 Kevlin Henney</small></td>
  80. </tr></table>
  81. <hr>
  82. <div class="spirit-nav">
  83. <a accesskey="p" href="s02.html"><img src="../images/prev.png" alt="Prev"></a><a accesskey="u" href="../any.html"><img src="../images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../images/home.png" alt="Home"></a><a accesskey="n" href="../bad_any_cast.html"><img src="../images/next.png" alt="Next"></a>
  84. </div>
  85. </body>
  86. </html>
粤ICP备19079148号