1<html> 2<head> 3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 4<title>ostream</title> 5<link rel="stylesheet" href="../../../../../../doc/src/boostbook.css" type="text/css"> 6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1"> 7<link rel="home" href="../../index.html" title="Chapter 1. Boost.Beast"> 8<link rel="up" href="../ref.html" title="This Page Intentionally Left Blank 2/2"> 9<link rel="prev" href="boost__beast__make_printable.html" title="make_printable"> 10<link rel="next" href="boost__beast__buffers.html" title="buffers"> 11</head> 12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> 13<table cellpadding="2" width="100%"><tr> 14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td> 15<td align="center"><a href="../../../../../../index.html">Home</a></td> 16<td align="center"><a href="../../../../../../libs/libraries.htm">Libraries</a></td> 17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> 18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> 19<td align="center"><a href="../../../../../../more/index.htm">More</a></td> 20</tr></table> 21<hr> 22<div class="spirit-nav"> 23<a accesskey="p" href="boost__beast__make_printable.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="boost__beast__buffers.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a> 24</div> 25<div class="section"> 26<div class="titlepage"><div><div><h4 class="title"> 27<a name="beast.ref.boost__beast__ostream"></a><a class="link" href="boost__beast__ostream.html" title="ostream">ostream</a> 28</h4></div></div></div> 29<p> 30 <a class="indexterm" name="idm46057512709152"></a> 31 </p> 32<p> 33 Return an output stream that formats values into a <span class="emphasis"><em>DynamicBuffer</em></span>. 34 </p> 35<h5> 36<a name="beast.ref.boost__beast__ostream.h0"></a> 37 <span class="phrase"><a name="beast.ref.boost__beast__ostream.synopsis"></a></span><a class="link" href="boost__beast__ostream.html#beast.ref.boost__beast__ostream.synopsis">Synopsis</a> 38 </h5> 39<p> 40 Defined in header <code class="literal"><<a href="../../../../../../boost/beast/core/ostream.hpp" target="_top">boost/beast/core/ostream.hpp</a>></code> 41 </p> 42<pre class="programlisting"><span class="keyword">template</span><span class="special"><</span> 43 <span class="keyword">class</span> <a class="link" href="../concepts/DynamicBuffer.html" title="DynamicBuffer"><span class="emphasis"><em>DynamicBuffer</em></span></a><span class="special">></span> 44<span class="emphasis"><em>implementation-defined</em></span> 45<span class="identifier">ostream</span><span class="special">(</span> 46 <span class="identifier">DynamicBuffer</span><span class="special">&</span> <span class="identifier">buffer</span><span class="special">);</span> 47</pre> 48<h5> 49<a name="beast.ref.boost__beast__ostream.h1"></a> 50 <span class="phrase"><a name="beast.ref.boost__beast__ostream.description"></a></span><a class="link" href="boost__beast__ostream.html#beast.ref.boost__beast__ostream.description">Description</a> 51 </h5> 52<p> 53 This function wraps the caller provided <span class="emphasis"><em>DynamicBuffer</em></span> 54 into a <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span></code> derived class, to allow <code class="computeroutput"><span class="keyword">operator</span><span class="special"><<</span></code> 55 stream style formatting operations. 56 </p> 57<h5> 58<a name="beast.ref.boost__beast__ostream.h2"></a> 59 <span class="phrase"><a name="beast.ref.boost__beast__ostream.example"></a></span><a class="link" href="boost__beast__ostream.html#beast.ref.boost__beast__ostream.example">Example</a> 60 </h5> 61<pre class="programlisting"><span class="identifier">ostream</span><span class="special">(</span><span class="identifier">buffer</span><span class="special">)</span> <span class="special"><<</span> <span class="string">"Hello, world!"</span> <span class="special"><<</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">endl</span><span class="special">;</span> 62</pre> 63<h5> 64<a name="beast.ref.boost__beast__ostream.h3"></a> 65 <span class="phrase"><a name="beast.ref.boost__beast__ostream.remarks"></a></span><a class="link" href="boost__beast__ostream.html#beast.ref.boost__beast__ostream.remarks">Remarks</a> 66 </h5> 67<p> 68 Calling members of the underlying buffer before the output stream is destroyed 69 results in undefined behavior. 70 </p> 71<h5> 72<a name="beast.ref.boost__beast__ostream.h4"></a> 73 <span class="phrase"><a name="beast.ref.boost__beast__ostream.parameters"></a></span><a class="link" href="boost__beast__ostream.html#beast.ref.boost__beast__ostream.parameters">Parameters</a> 74 </h5> 75<div class="informaltable"><table class="table"> 76<colgroup> 77<col> 78<col> 79</colgroup> 80<thead><tr> 81<th> 82 <p> 83 Name 84 </p> 85 </th> 86<th> 87 <p> 88 Description 89 </p> 90 </th> 91</tr></thead> 92<tbody><tr> 93<td> 94 <p> 95 <code class="computeroutput"><span class="identifier">buffer</span></code> 96 </p> 97 </td> 98<td> 99 <p> 100 An object meeting the requirements of <span class="emphasis"><em>DynamicBuffer</em></span> 101 into which the formatted output will be placed. 102 </p> 103 </td> 104</tr></tbody> 105</table></div> 106<h5> 107<a name="beast.ref.boost__beast__ostream.h5"></a> 108 <span class="phrase"><a name="beast.ref.boost__beast__ostream.return_value"></a></span><a class="link" href="boost__beast__ostream.html#beast.ref.boost__beast__ostream.return_value">Return 109 Value</a> 110 </h5> 111<p> 112 An object derived from <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span></code> 113 which redirects output The wrapped dynamic buffer is not modified, a copy 114 is made instead. Ownership of the underlying memory is not transferred, the 115 application is still responsible for managing its lifetime. The caller is 116 responsible for ensuring the dynamic buffer is not destroyed for the lifetime 117 of the output stream. 118 </p> 119</div> 120<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr> 121<td align="left"></td> 122<td align="right"><div class="copyright-footer">Copyright © 2016-2019 Vinnie 123 Falco<p> 124 Distributed under the Boost Software License, Version 1.0. (See accompanying 125 file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>) 126 </p> 127</div></td> 128</tr></table> 129<hr> 130<div class="spirit-nav"> 131<a accesskey="p" href="boost__beast__make_printable.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ref.html"><img src="../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="boost__beast__buffers.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a> 132</div> 133</body> 134</html> 135