Skip to content

Commit c4b3ffd

Browse files
author
cpprefjp-autoupdate
committed
update automatically
1 parent d490f47 commit c4b3ffd

File tree

13 files changed

+3914
-150
lines changed

13 files changed

+3914
-150
lines changed

lang/cpp26.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -176,8 +176,8 @@
176176

177177
<p class="text-right"><small>
178178
最終更新日時(UTC):
179-
<span itemprop="datePublished" content="2025-05-13T08:20:39">
180-
2025年05月13日 08時20分39秒
179+
<span itemprop="datePublished" content="2025-06-04T10:07:53">
180+
2025年06月04日 10時07分53秒
181181
</span>
182182
<br/>
183183
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -542,7 +542,7 @@ <h3>コンテナ</h3>
542542
<li><code><a href="../reference/span/span.html">std::span</a></code><code><a href="../reference/mdspan/mdspan.html">std::mdspan</a></code>の推論補助を改善</li>
543543
<li><code><a href="../reference/ranges/concat_view.html">std::views::concat</a></code>を追加</li>
544544
<li><code><span href="https://cpprefjp.github.io/reference/ranges/cache_latest.md.nolink">std::views::cache_latest</span></code>を追加</li>
545-
<li><code><span href="https://cpprefjp.github.io/reference/ranges/to_input_view.md.nolink">std::views::to_input</span></code>を追加。書き換えできない入力専用の値に変換する</li>
545+
<li><code><a href="../reference/ranges/to_input_view.html">std::views::to_input</a></code>を追加。これはパフォーマンス向上のために、Rangeを入力Rangeかつ非<code><a href="../reference/ranges/common_range.html">common_range</a></code> (イテレータと番兵の型を別する) に変換する</li>
546546
<li>Range関係の、償却定数時間での要素追加を行う機能を追加<ul>
547547
<li>各viewクラスに<code>reserve_hint()</code>メンバ関数を追加</li>
548548
<li><code><span href="https://cpprefjp.github.io/reference/ranges/reserve_hint.md.nolink">std::ranges::reserve_hint()</span></code>関数を追加</li>

reference/ranges.html

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -176,12 +176,12 @@
176176

177177
<p class="text-right"><small>
178178
最終更新日時(UTC):
179-
<span itemprop="datePublished" content="2024-08-30T16:58:39">
180-
2024年08月30日 16時58分39秒
179+
<span itemprop="datePublished" content="2025-06-04T10:07:53">
180+
2025年06月04日 10時07分53秒
181181
</span>
182182
<br/>
183183
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
184-
<span itemprop="name">Tetsuro Matsumura</span>
184+
<span itemprop="name">Akira Takahashi</span>
185185
</span>
186186
が更新
187187
</small></p>
@@ -1382,6 +1382,28 @@ <h3>cartesian product view</h3>
13821382
</tr>
13831383
</tbody>
13841384
</table>
1385+
<h3>to input view</h3>
1386+
<table border="1" bordercolor="#888" style="border-collapse:collapse">
1387+
<thead>
1388+
<tr>
1389+
<th>名前</th>
1390+
<th>説明</th>
1391+
<th>対応バージョン</th>
1392+
</tr>
1393+
</thead>
1394+
<tbody>
1395+
<tr>
1396+
<td><code><a href="ranges/to_input_view.html">to_input_view</a></code></td>
1397+
<td>入力用Rangeに変換する (class template)</td>
1398+
<td>C++26</td>
1399+
</tr>
1400+
<tr>
1401+
<td><code><a href="ranges/to_input_view.html">views::to_input</a></code></td>
1402+
<td><code>to_input_view</code>を生成する (customization point object)</td>
1403+
<td>C++26</td>
1404+
</tr>
1405+
</tbody>
1406+
</table>
13851407
<h2>Range変換</h2>
13861408
<table border="1" bordercolor="#888" style="border-collapse:collapse">
13871409
<thead>

reference/ranges/to_input_view.html

Lines changed: 469 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 301 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,301 @@
1+
<!doctype html>
2+
<html class="cpprefjp" lang="ja" itemscope="" itemtype="http://schema.org/WebPage">
3+
<head>
4+
5+
6+
<!-- Google tag (gtag.js) -->
7+
<script async src="https://www.googletagmanager.com/gtag/js?id=G-NXNBNVBTJS"></script>
8+
<script>
9+
window.dataLayer = window.dataLayer || [];
10+
function gtag(){dataLayer.push(arguments);}
11+
gtag('js', new Date());
12+
13+
gtag('config', 'G-NXNBNVBTJS');
14+
</script>
15+
16+
17+
<meta charset="UTF-8">
18+
19+
<title>to_input_view::base - cpprefjp C++日本語リファレンス</title>
20+
21+
<meta name="viewport" content="width=device-width,initial-scale=1">
22+
<meta name="keywords" content="
23+
C++,標準ライブラリ,リファレンス,ドキュメント,STL,std,ranges,std::ranges,to_input_view,function,cpp26
24+
">
25+
<meta name="title" content="to_input_view::base - cpprefjp C++日本語リファレンス" />
26+
<meta itemprop="name" content="to_input_view::base - cpprefjp C++日本語リファレンス" />
27+
<meta property="og:title" content="to_input_view::base - cpprefjp C++日本語リファレンス" />
28+
<meta property="og:url" content="https://cpprefjp.github.io/reference/ranges/to_input_view/base.html" />
29+
<meta property="og:site_name" content="cpprefjp - C++日本語リファレンス" />
30+
<meta property="og:type" content="article" />
31+
<meta property="og:description" content="メンバ変数として保持している、元のRangeを取得する。" />
32+
<meta name="twitter:card" content="summary" />
33+
<meta name="twitter:title" content="to_input_view::base - cpprefjp C++日本語リファレンス" />
34+
<meta name="twitter:url" content="https://cpprefjp.github.io/reference/ranges/to_input_view/base.html" />
35+
<meta name="twitter:description" content="メンバ変数として保持している、元のRangeを取得する。" />
36+
37+
38+
<link rel="alternate" type="application/atom+xml" title="Atom" href="https://cpprefjp.github.io/rss.xml" />
39+
40+
41+
<link rel="apple-touch-icon" sizes="180x180" href="../../../static/favicons/apple-touch-icon.png?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e">
42+
<link rel="icon" type="image/png" sizes="32x32" href="../../../static/favicons/favicon-32x32.png?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e">
43+
<link rel="icon" type="image/png" sizes="16x16" href="../../../static/favicons/favicon-16x16.png?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e">
44+
<link rel="manifest" href="../../../manifest.json?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e">
45+
<meta name="theme-color" content="#f5f8fc">
46+
47+
<link rel="stylesheet" href="../../../static/pygments/default.css?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e">
48+
<!-- <link rel="stylesheet" href="../../../static/css/root.css"> -->
49+
50+
51+
52+
53+
54+
<link href="../../../static/kunai/css/kunai-stage-0.css?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e" rel="stylesheet">
55+
<link href="../../../static/kunai/css/kunai-stage-1.css?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e" rel="stylesheet">
56+
<link href="../../../static/kunai/css/kunai-stage-2.css?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e" rel="stylesheet">
57+
<link href="../../../static/kunai/css/kunai-stage-3.css?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e" rel="stylesheet">
58+
59+
<script type="text/javascript" src="../../../static/kunai/js/kunai-vendor.js?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e"></script>
60+
<script type="text/javascript" src="../../../static/kunai/js/kunai.js?cachebust=2a7ddc62f9c987d65760cb7e6115f210c1266a7e"></script>
61+
62+
<script type="text/javascript">
63+
document.addEventListener('DOMContentLoaded', function() {
64+
var kn = new Kunai;
65+
kn.cpprefjp();
66+
});
67+
</script>
68+
69+
</head>
70+
<body>
71+
<header data-kunai-mdinfo="{&#34;meta&#34;: {&#34;header&#34;: [&#34;ranges&#34;], &#34;namespace&#34;: [&#34;std::ranges&#34;], &#34;class&#34;: [&#34;to_input_view&#34;], &#34;id-type&#34;: [&#34;function&#34;], &#34;cpp&#34;: [&#34;cpp26&#34;]}, &#34;sources&#34;: [{&#34;id&#34;: &#34;593cf1199b8872c3a10efba5df84fcc49d9860a4&#34;, &#34;source&#34;: &#34;#include &lt;ranges&gt;\n#include &lt;vector&gt;\n#include &lt;iostream&gt;\n\nint main() {\n std::vector&lt;int&gt; vec = {1, 2, 3, 4, 5};\n\n std::ranges::to_input_view view{vec};\n\n // (1) \u30b3\u30d4\u30fc\u3057\u3066\u53d6\u5f97\n std::vector&lt;int&gt; v1 = view.base();\n\n // (2) \u30e0\u30fc\u30d6\u3057\u3066\u53d6\u5f97\n std::ranges::to_input_view view2{vec};\n std::vector&lt;int&gt; v2 = std::move(view2).base();\n\n std::cout &lt;&lt; v1.size() &lt;&lt; std::endl;\n std::cout &lt;&lt; v2.size() &lt;&lt; std::endl;\n}\n&#34;}], &#34;page_id&#34;: [&#34;reference&#34;, &#34;ranges&#34;, &#34;to_input_view&#34;, &#34;base&#34;]}">
72+
<nav class="navbar navbar-default" role="navigation">
73+
<div class="container-fluid">
74+
<div class="navbar-header">
75+
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse">
76+
<span class="sr-only">Toggle navigation</span>
77+
<span class="icon-bar"></span>
78+
<span class="icon-bar"></span>
79+
<span class="icon-bar"></span>
80+
</button>
81+
<a class="navbar-brand" href="../../../index.html">
82+
<div class="title-wrapper clearfix">
83+
<div class="title">cpprefjp - C++日本語リファレンス</div>
84+
</div>
85+
</a>
86+
</div>
87+
88+
<div class="collapse navbar-collapse" id="navbar-collapse">
89+
<ul class="nav navbar-nav navbar-right">
90+
<li>
91+
<div class="google-search">
92+
93+
94+
<script>
95+
(function() {
96+
var cx = '013316413321391058734:ji_u66hl7hq';
97+
var gcse = document.createElement('script');
98+
gcse.type = 'text/javascript';
99+
gcse.async = true;
100+
gcse.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') +
101+
'//www.google.com/cse/cse.js?cx=' + cx;
102+
var s = document.getElementsByTagName('script')[0];
103+
s.parentNode.insertBefore(gcse, s);
104+
})();
105+
</script>
106+
<div class="gcse-search"></div>
107+
108+
109+
</div>
110+
</li>
111+
<li>
112+
<a href="https://github.com/cpprefjp/site">GitHub Project</a>
113+
</li>
114+
</ul>
115+
</div>
116+
</div>
117+
</nav>
118+
</header>
119+
120+
<main id="main" role="main">
121+
<div class="container-fluid">
122+
<div class="row">
123+
<div class="col-sm-9 col-sm-push-3" itemscope itemtype="http://schema.org/Article">
124+
<div class="row">
125+
<div class="col-sm-12 google-search-result">
126+
<gcse:searchresults></gcse:searchresults>
127+
</div>
128+
</div>
129+
<div class="row">
130+
<div class="col-sm-12 content-header">
131+
132+
<ol class="breadcrumb">
133+
134+
<li itemscope itemtype="http://www.schema.org/SiteNavigationElement">
135+
<span>
136+
137+
<a href="../../../index.html" itemprop="url">
138+
139+
<i class="fa fa-fw fa-home"></i>
140+
141+
</a>
142+
143+
</span>
144+
</li>
145+
146+
<li itemscope itemtype="http://www.schema.org/SiteNavigationElement">
147+
<span>
148+
149+
<a href="../../../reference.html" itemprop="url">
150+
151+
<span itemprop="name">リファレンス</span>
152+
153+
</a>
154+
155+
</span>
156+
</li>
157+
158+
<li itemscope itemtype="http://www.schema.org/SiteNavigationElement">
159+
<span>
160+
161+
<a href="../../../reference/ranges.html" itemprop="url">
162+
163+
<span itemprop="name">ranges</span>
164+
165+
</a>
166+
167+
</span>
168+
</li>
169+
170+
<li itemscope itemtype="http://www.schema.org/SiteNavigationElement">
171+
<span>
172+
173+
<a href="../../../reference/ranges/to_input_view.html" itemprop="url">
174+
175+
<span itemprop="name">to_input_view</span>
176+
177+
</a>
178+
179+
</span>
180+
</li>
181+
182+
<li class="active" itemscope itemtype="http://www.schema.org/SiteNavigationElement">
183+
<span>
184+
185+
186+
<span itemprop="name">base</span>
187+
188+
189+
</span>
190+
</li>
191+
192+
</ol>
193+
<div class="crsearch"></div>
194+
195+
</div>
196+
</div>
197+
<div class="row">
198+
<div class="col-sm-12 edit-button">
199+
200+
201+
<p class="text-right"><small>
202+
最終更新日時(UTC):
203+
<span itemprop="datePublished" content="2025-06-04T10:24:51">
204+
2025年06月04日 10時24分51秒
205+
</span>
206+
<br/>
207+
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
208+
<span itemprop="name">Akira Takahashi</span>
209+
</span>
210+
が更新
211+
</small></p>
212+
213+
214+
<p class="text-right">
215+
<a class="history" target="_blank" href="https://github.com/cpprefjp/site/commits/master/reference/ranges/to_input_view/base.md">
216+
<span class="fa fa-fw fa-clock-o fa-flip-horizontal"></span>履歴
217+
</a>
218+
<a class="edit" target="_blank" href="https://github.com/cpprefjp/site/edit/master/reference/ranges/to_input_view/base.md">
219+
<span class="fa fa-fw fa-pencil"></span>編集
220+
</a>
221+
</p>
222+
</div>
223+
</div>
224+
<div class="row">
225+
<div class="col-sm-12 content-body">
226+
227+
<div class="identifier-type">function</div><div class="header">&lt;ranges&gt;</div><h1 itemprop="name"><span class="namespace" title="namespace std::ranges">std::ranges::</span><span class="class" title="class to_input_view">to_input_view::</span><span class="token">base</span><span class="cpp cpp26" title="C++26で追加">(C++26)</span></h1>
228+
<div itemprop="articleBody"><p><div class="codehilite"><pre><span></span><code><span class="k">constexpr</span> <span class="n">V</span> <span class="nf">base</span><span class="p">()</span> <span class="k">const</span><span class="o">&amp;</span>
229+
<span class="n">requires</span> <span class="n"><a href="../../concepts/copy_constructible.html">copy_constructible</a></span><span class="o">&lt;</span><span class="n">V</span><span class="o">&gt;</span><span class="p">;</span> <span class="c1">// (1) C++26</span>
230+
231+
<span class="k">constexpr</span> <span class="n">V</span> <span class="nf">base</span><span class="p">()</span> <span class="o">&amp;&amp;</span><span class="p">;</span> <span class="c1">// (2) C++26</span>
232+
</code></pre></div>
233+
</p>
234+
<h2>概要</h2>
235+
<p>メンバ変数として保持している、元のRangeを取得する。</p>
236+
<h2>効果</h2>
237+
<ul>
238+
<li>(1): <code>return base_;</code></li>
239+
<li>(2): <code>return std::move(base_);</code></li>
240+
</ul>
241+
<h2></h2>
242+
<p><div class="yata" id="593cf1199b8872c3a10efba5df84fcc49d9860a4"><div class="codehilite"><pre><span></span><code><span class="cp">#include</span> <span class="cpf"><a href="../../ranges.html">&lt;ranges&gt;</a></span><span class="cp"></span>
243+
<span class="cp">#include</span> <span class="cpf"><a href="../../vector.html">&lt;vector&gt;</a></span><span class="cp"></span>
244+
<span class="cp">#include</span> <span class="cpf"><a href="../../iostream.html">&lt;iostream&gt;</a></span><span class="cp"></span>
245+
246+
<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span> <span class="p">{</span>
247+
<span class="n"><a href="../../vector/vector.html">std::vector</a></span><span class="o">&lt;</span><span class="kt">int</span><span class="o">&gt;</span> <span class="n">vec</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">5</span><span class="p">};</span>
248+
249+
<span class="n">std</span><span class="o">::</span><span class="n">ranges</span><span class="o">::</span><span class="n">to_input_view</span> <span class="n"><a href="../view.html">view</a></span><span class="p">{</span><span class="n">vec</span><span class="p">};</span>
250+
251+
<span class="c1">// (1) コピーして取得</span>
252+
<span class="n"><a href="../../vector/vector.html">std::vector</a></span><span class="o">&lt;</span><span class="kt">int</span><span class="o">&gt;</span> <span class="n">v1</span> <span class="o">=</span> <span class="n"><a href="../view.html">view</a></span><span class="p">.</span><span class="n">base</span><span class="p">();</span>
253+
254+
<span class="c1">// (2) ムーブして取得</span>
255+
<span class="n">std</span><span class="o">::</span><span class="n">ranges</span><span class="o">::</span><span class="n">to_input_view</span> <span class="n"><a href="../view.html">view</a>2</span><span class="p">{</span><span class="n">vec</span><span class="p">};</span>
256+
<span class="n"><a href="../../vector/vector.html">std::vector</a></span><span class="o">&lt;</span><span class="kt">int</span><span class="o">&gt;</span> <span class="n">v2</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n"><a href="../view.html">view</a>2</span><span class="p">).</span><span class="n">base</span><span class="p">();</span>
257+
258+
<span class="n"><a href="../../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../../vector/vector/size.html">v1.size()</a></span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../../ostream/endl.html">std::endl</a></span><span class="p">;</span>
259+
<span class="n"><a href="../../iostream/cout.html">std::cout</a></span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../../vector/vector/size.html">v2.size()</a></span> <span class="o">&lt;&lt;</span> <span class="n"><a href="../../ostream/endl.html">std::endl</a></span><span class="p">;</span>
260+
<span class="p">}</span>
261+
</code></pre></div>
262+
</div></p>
263+
<h3>出力</h3>
264+
<p><pre><code>5
265+
5
266+
</code></pre></p>
267+
<h2>バージョン</h2>
268+
<h3>言語</h3>
269+
<ul>
270+
<li>C++26</li>
271+
</ul>
272+
<h3>処理系</h3>
273+
<ul>
274+
<li><a href="../../../implementation.html#clang">Clang</a>: 21 <span aria-label="検証済" role="img" title="検証済"></span></li>
275+
<li><a href="../../../implementation.html#gcc">GCC</a>: 15.1 <span aria-label="検証済" role="img" title="検証済"></span></li>
276+
<li><a href="../../../implementation.html#visual_cpp">Visual C++</a>: 2022 Update 14 <span aria-label="未実装" role="img" title="未実装"></span></li>
277+
</ul></div>
278+
279+
</div>
280+
</div>
281+
</div>
282+
283+
284+
<div id="sidebar" class="col-sm-3 col-sm-pull-9">
285+
</div>
286+
287+
288+
</div>
289+
</div>
290+
</main>
291+
<footer class="footer navbar navbar-default">
292+
<div class="container-fluid">
293+
<p><small>
294+
本サイトの情報は、
295+
<a href="https://creativecommons.org/licenses/by/3.0/deed.ja" rel="nofollow">クリエイティブ・コモンズ 表示 3.0 非移植 ライセンス(CC BY)</a>
296+
の下に提供されています。
297+
</small></p>
298+
</div>
299+
</footer>
300+
</body>
301+
</html>

0 commit comments

Comments
 (0)