|
188 | 188 |
|
189 | 189 | <p class="text-right"><small>
|
190 | 190 | 最終更新日時(UTC):
|
191 |
| - <span itemprop="datePublished" content="2024-06-11T13:45:38"> |
192 |
| - 2024年06月11日 13時45分38秒 |
| 191 | + <span itemprop="datePublished" content="2024-12-20T08:06:37"> |
| 192 | + 2024年12月20日 08時06分37秒 |
193 | 193 | </span>
|
194 | 194 | <br/>
|
195 | 195 | <span itemprop="author" itemscope itemtype="http://schema.org/Person">
|
|
221 | 221 | <span class="n"><a href="no-throw-forward-iterator.html">no-throw-forward-iterator</a></span> <span class="n">O</span><span class="p">,</span> <span class="n"><a href="no-throw-sentinel.html">no-throw-sentinel</a></span><span class="o"><</span><span class="n">O</span><span class="o">></span> <span class="n">S2</span><span class="o">></span>
|
222 | 222 | <span class="n">requires</span> <span class="n"><a href="../concepts/constructible_from.html">constructible_from</a></span><span class="o"><</span><span class="n">iter_value_t</span><span class="o"><</span><span class="n">O</span><span class="o">></span><span class="p">,</span> <span class="n"><a href="../iterator/iter_reference_t.html">iter_reference_t</a></span><span class="o"><</span><span class="n">I</span><span class="o">>></span>
|
223 | 223 | <span class="n">uninitialized_copy_result</span><span class="o"><</span><span class="n">I</span><span class="p">,</span> <span class="n">O</span><span class="o">></span>
|
224 |
| - <span class="n">uninitialized_copy</span><span class="p">(</span><span class="n">I</span> <span class="n">ifirst</span><span class="p">,</span> <span class="n">S1</span> <span class="n">ilast</span><span class="p">,</span> <span class="n">O</span> <span class="n">ofirst</span><span class="p">,</span> <span class="n">S2</span> <span class="n">olast</span><span class="p">);</span> <span class="c1">// (1) C++20</span> |
| 224 | + <span class="n">uninitialized_copy</span><span class="p">(</span><span class="n">I</span> <span class="n">ifirst</span><span class="p">,</span> |
| 225 | + <span class="n">S1</span> <span class="n">ilast</span><span class="p">,</span> |
| 226 | + <span class="n">O</span> <span class="n">ofirst</span><span class="p">,</span> |
| 227 | + <span class="n">S2</span> <span class="n">olast</span><span class="p">);</span> <span class="c1">// (1) C++20</span> |
| 228 | + <span class="k">template</span> <span class="o"><</span><span class="n"><a href="../iterator/input_iterator.html">input_iterator</a></span> <span class="n">I</span><span class="p">,</span> <span class="n"><a href="../iterator/sentinel_for.html">sentinel_for</a></span><span class="o"><</span><span class="n">I</span><span class="o">></span> <span class="n">S1</span><span class="p">,</span> |
| 229 | + <span class="n"><a href="no-throw-forward-iterator.html">no-throw-forward-iterator</a></span> <span class="n">O</span><span class="p">,</span> <span class="n"><a href="no-throw-sentinel.html">no-throw-sentinel</a></span><span class="o"><</span><span class="n">O</span><span class="o">></span> <span class="n">S2</span><span class="o">></span> |
| 230 | + <span class="n">requires</span> <span class="n"><a href="../concepts/constructible_from.html">constructible_from</a></span><span class="o"><</span><span class="n">iter_value_t</span><span class="o"><</span><span class="n">O</span><span class="o">></span><span class="p">,</span> <span class="n"><a href="../iterator/iter_reference_t.html">iter_reference_t</a></span><span class="o"><</span><span class="n">I</span><span class="o">>></span> |
| 231 | + <span class="k">constexpr</span> <span class="n">uninitialized_copy_result</span><span class="o"><</span><span class="n">I</span><span class="p">,</span> <span class="n">O</span><span class="o">></span> |
| 232 | + <span class="n">uninitialized_copy</span><span class="p">(</span><span class="n">I</span> <span class="n">ifirst</span><span class="p">,</span> |
| 233 | + <span class="n">S1</span> <span class="n">ilast</span><span class="p">,</span> |
| 234 | + <span class="n">O</span> <span class="n">ofirst</span><span class="p">,</span> |
| 235 | + <span class="n">S2</span> <span class="n">olast</span><span class="p">);</span> <span class="c1">// (1) C++26</span> |
225 | 236 |
|
226 | 237 | <span class="k">template</span> <span class="o"><</span><span class="n"><a href="../ranges/input_range.html">input_range</a></span> <span class="n">IR</span><span class="p">,</span> <span class="n"><a href="no-throw-forward-range.html">no-throw-forward-range</a></span> <span class="n">OR</span><span class="o">></span>
|
227 | 238 | <span class="n">requires</span> <span class="n"><a href="../concepts/constructible_from.html">constructible_from</a></span><span class="o"><</span><span class="n"><a href="../ranges/range_value_t.html">range_value_t</a></span><span class="o"><</span><span class="n">OR</span><span class="o">></span><span class="p">,</span> <span class="n"><a href="../ranges/range_reference_t.html">range_reference_t</a></span><span class="o"><</span><span class="n">IR</span><span class="o">>></span>
|
228 |
| - <span class="n">uninitialized_copy_result</span><span class="o"><</span><span class="n"><a href="../ranges/borrowed_iterator_t.html">borrowed_iterator_t</a></span><span class="o"><</span><span class="n">IR</span><span class="o">></span><span class="p">,</span> <span class="n"><a href="../ranges/borrowed_iterator_t.html">borrowed_iterator_t</a></span><span class="o"><</span><span class="n">OR</span><span class="o">>></span> |
229 |
| - <span class="n">uninitialized_copy</span><span class="p">(</span><span class="n">IR</span><span class="o">&&</span> <span class="n">in_range</span><span class="p">,</span> <span class="n">OR</span><span class="o">&&</span> <span class="n">out_range</span><span class="p">);</span> <span class="c1">// (2) C++20</span> |
| 239 | + <span class="n">uninitialized_copy_result</span><span class="o"><</span> |
| 240 | + <span class="n"><a href="../ranges/borrowed_iterator_t.html">borrowed_iterator_t</a></span><span class="o"><</span><span class="n">IR</span><span class="o">></span><span class="p">,</span> |
| 241 | + <span class="n"><a href="../ranges/borrowed_iterator_t.html">borrowed_iterator_t</a></span><span class="o"><</span><span class="n">OR</span><span class="o">></span> |
| 242 | + <span class="o">></span> |
| 243 | + <span class="n">uninitialized_copy</span><span class="p">(</span><span class="n">IR</span><span class="o">&&</span> <span class="n">in_range</span><span class="p">,</span> |
| 244 | + <span class="n">OR</span><span class="o">&&</span> <span class="n">out_range</span><span class="p">);</span> <span class="c1">// (2) C++20</span> |
| 245 | + <span class="k">template</span> <span class="o"><</span><span class="n"><a href="../ranges/input_range.html">input_range</a></span> <span class="n">IR</span><span class="p">,</span> <span class="n"><a href="no-throw-forward-range.html">no-throw-forward-range</a></span> <span class="n">OR</span><span class="o">></span> |
| 246 | + <span class="n">requires</span> <span class="n"><a href="../concepts/constructible_from.html">constructible_from</a></span><span class="o"><</span><span class="n"><a href="../ranges/range_value_t.html">range_value_t</a></span><span class="o"><</span><span class="n">OR</span><span class="o">></span><span class="p">,</span> <span class="n"><a href="../ranges/range_reference_t.html">range_reference_t</a></span><span class="o"><</span><span class="n">IR</span><span class="o">>></span> |
| 247 | + <span class="k">constexpr</span> <span class="n">uninitialized_copy_result</span><span class="o"><</span> |
| 248 | + <span class="n"><a href="../ranges/borrowed_iterator_t.html">borrowed_iterator_t</a></span><span class="o"><</span><span class="n">IR</span><span class="o">></span><span class="p">,</span> |
| 249 | + <span class="n"><a href="../ranges/borrowed_iterator_t.html">borrowed_iterator_t</a></span><span class="o"><</span><span class="n">OR</span><span class="o">></span> |
| 250 | + <span class="o">></span> |
| 251 | + <span class="n">uninitialized_copy</span><span class="p">(</span><span class="n">IR</span><span class="o">&&</span> <span class="n">in_range</span><span class="p">,</span> |
| 252 | + <span class="n">OR</span><span class="o">&&</span> <span class="n">out_range</span><span class="p">);</span> <span class="c1">// (2) C++26</span> |
230 | 253 | <span class="p">}</span>
|
231 | 254 | </code></pre></div>
|
232 | 255 | </p>
|
@@ -331,6 +354,10 @@ <h2>関連項目</h2>
|
331 | 354 | <h2>参照</h2>
|
332 | 355 | <ul>
|
333 | 356 | <li><a href="https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0896r4.pdf" target="_blank">P9896R4 The One Ranges Proposal</a></li>
|
| 357 | +<li><a href="https://open-std.org/jtc1/sc22/wg21/docs/papers/2024/p3508r0.html" target="_blank">P3508R0 Wording for "constexpr for specialized memory algorithms"</a><ul> |
| 358 | +<li>C++26から<code>constexpr</code>がついた</li> |
| 359 | +</ul> |
| 360 | +</li> |
334 | 361 | </ul></div>
|
335 | 362 |
|
336 | 363 | </div>
|
|
0 commit comments