Skip to content

Commit 7941604

Browse files
author
cpprefjp-autoupdate
committed
update automatically
1 parent 48ad76f commit 7941604

6 files changed

Lines changed: 107 additions & 2643 deletions

lang/cpp29/deallocation_functions_with_throwing_exception_specification_are_ill_formed.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -189,8 +189,8 @@
189189
<p class="text-right"><small>
190190
最終更新日時:
191191
<time itemprop="datePublished" class="js-local-time"
192-
datetime="2026-09-05T09:37:12+09:00">
193-
2026年09月05日 09時37分12秒 (JST)
192+
datetime="2026-09-05T09:40:12+09:00">
193+
2026年09月05日 09時40分12秒 (JST)
194194
</time>
195195
<br/>
196196
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -268,14 +268,14 @@ <h2>例</h2>
268268
<span class="k">struct</span><span class="w"> </span><span class="nc">T</span><span class="w"> </span><span class="p">{</span>
269269
<span class="w"> </span><span class="c1">// 明示的なnoexcept指定のない解放関数は、例外を送出しない例外指定を持つ</span>
270270
<span class="w"> </span><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="w"> </span><span class="k">operator</span><span class="w"> </span><span class="k">delete</span><span class="p">(</span><span class="kt">void</span><span class="o">*</span><span class="w"> </span><span class="n">p</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
271-
<span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">free</span><span class="p">(</span><span class="n">p</span><span class="p">);</span>
271+
<span class="w"> </span><span class="n"><a href="../../reference/cstdlib/free.html">std::free</a></span><span class="p">(</span><span class="n">p</span><span class="p">);</span>
272272
<span class="w"> </span><span class="p">}</span>
273273

274274
<span class="w"> </span><span class="c1">// C++29からコンパイルエラー:解放関数は例外を送出しうる例外指定を持てない</span>
275275
<span class="w"> </span><span class="c1">// static void operator delete(void* p) noexcept(false);</span>
276276

277277
<span class="w"> </span><span class="k">static</span><span class="w"> </span><span class="kt">void</span><span class="o">*</span><span class="w"> </span><span class="k">operator</span><span class="w"> </span><span class="k">new</span><span class="p">(</span><span class="n"><a href="../../reference/cstddef/size_t.html">std::size_t</a></span><span class="w"> </span><span class="n">size</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
278-
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">malloc</span><span class="p">(</span><span class="n">size</span><span class="p">);</span>
278+
<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n"><a href="../../reference/cstdlib/malloc.html">std::malloc</a></span><span class="p">(</span><span class="n">size</span><span class="p">);</span>
279279
<span class="w"> </span><span class="p">}</span>
280280
<span class="p">};</span>
281281

lang/cpp29/lexical_order_for_lambdas.html

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -189,8 +189,8 @@
189189
<p class="text-right"><small>
190190
最終更新日時:
191191
<time itemprop="datePublished" class="js-local-time"
192-
datetime="2026-09-05T09:27:26+09:00">
193-
2026年09月05日 09時27分26秒 (JST)
192+
datetime="2026-09-05T09:40:12+09:00">
193+
2026年09月05日 09時40分12秒 (JST)
194194
</time>
195195
<br/>
196196
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -245,9 +245,9 @@ <h1 itemprop="name"><span class="token">ラムダ式のキャプチャが書か
245245
</p>
246246
<h2>概要</h2>
247247
<p>C++26までの規格では、ラムダ式のキャプチャに対応するクロージャ型のメンバ変数の宣言順は<a class="cpprefjp-defined-word" data-desc="未規定の動作。事前の断りなく処理系によって異なる動作をする" href="../../implementation-compliance.html#dfn-unspecified-behavior">未規定</a>であり、キャプチャの初期化もその<a class="cpprefjp-defined-word" data-desc="未規定の動作。事前の断りなく処理系によって異なる動作をする" href="../../implementation-compliance.html#dfn-unspecified-behavior">未規定</a>の順序で行われていた。そのため、次のようなコードは安全ではなかった。</p>
248-
<p><div class="codehilite"><pre><span></span><code><span class="k">auto</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">make_unique</span><span class="o">&lt;</span><span class="kt">int</span><span class="o">&gt;</span><span class="p">();</span>
248+
<p><div class="codehilite"><pre><span></span><code><span class="k">auto</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="../../reference/memory/make_unique.html">std::make_unique</a></span><span class="o">&lt;</span><span class="kt">int</span><span class="o">&gt;</span><span class="p">();</span>
249249
<span class="p">[</span><span class="n">value</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="o">*</span><span class="n">x</span><span class="p">,</span>
250-
<span class="w"> </span><span class="n">lifetime</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">x</span><span class="p">)]</span><span class="w"> </span><span class="p">{};</span>
250+
<span class="w"> </span><span class="n">lifetime</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="../../reference/utility/move.html">std::move</a></span><span class="p">(</span><span class="n">x</span><span class="p">)]</span><span class="w"> </span><span class="p">{};</span>
251251
</code></pre></div>
252252
</p>
253253
<p><code>value</code>より先に<code>lifetime</code>が初期化される実装では、<code>*x</code>の読み取りの前に<code>x</code>からのムーブが行われてしまう。破棄の順序も同様に<a class="cpprefjp-defined-word" data-desc="未規定の動作。事前の断りなく処理系によって異なる動作をする" href="../../implementation-compliance.html#dfn-unspecified-behavior">未規定</a>だった。</p>
@@ -273,7 +273,7 @@ <h2>例</h2>
273273

274274
<span class="w"> </span><span class="c1">// 明示的なキャプチャは、書かれた順に初期化されることが保証される。</span>
275275
<span class="w"> </span><span class="c1">// sizeの初期化はownへのムーブより前に行われるため、元の要素数が得られる</span>
276-
<span class="w"> </span><span class="k">auto</span><span class="w"> </span><span class="n">f</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">[</span><span class="n">size</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="../../reference/vector/vector/size.html">v.size()</a></span><span class="p">,</span><span class="w"> </span><span class="n">own</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">v</span><span class="p">)]</span><span class="w"> </span><span class="p">{</span>
276+
<span class="w"> </span><span class="k">auto</span><span class="w"> </span><span class="n">f</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">[</span><span class="n">size</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="../../reference/vector/vector/size.html">v.size()</a></span><span class="p">,</span><span class="w"> </span><span class="n">own</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n"><a href="../../reference/utility/move.html">std::move</a></span><span class="p">(</span><span class="n">v</span><span class="p">)]</span><span class="w"> </span><span class="p">{</span>
277277
<span class="w"> </span><span class="n"><a href="../../reference/iostream/cout.html">std::cout</a></span><span class="w"> </span><span class="o">&lt;&lt;</span><span class="w"> </span><span class="n">size</span><span class="w"> </span><span class="o">&lt;&lt;</span><span class="w"> </span><span class="n"><a href="../../reference/ostream/endl.html">std::endl</a></span><span class="p">;</span>
278278
<span class="w"> </span><span class="p">};</span>
279279
<span class="w"> </span><span class="n">f</span><span class="p">();</span>

lang/cpp29/nondeterministic_pointer_provenance.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -189,8 +189,8 @@
189189
<p class="text-right"><small>
190190
最終更新日時:
191191
<time itemprop="datePublished" class="js-local-time"
192-
datetime="2026-09-04T14:32:29+09:00">
193-
2026年09月04日 14時32分29秒 (JST)
192+
datetime="2026-09-05T09:40:12+09:00">
193+
2026年09月05日 09時40分12秒 (JST)
194194
</time>
195195
<br/>
196196
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
@@ -251,8 +251,8 @@ <h2>概要</h2>
251251
</ul>
252252
<p><div class="codehilite"><pre><span></span><code><span class="kt">int</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
253253
<span class="kt">int</span><span class="w"> </span><span class="n">y</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
254-
<span class="n">std</span><span class="o">::</span><span class="kt">uintptr_t</span><span class="w"> </span><span class="n">p</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="kt">uintptr_t</span><span class="p">)</span><span class="o">&amp;</span><span class="n">x</span><span class="p">;</span>
255-
<span class="n">std</span><span class="o">::</span><span class="kt">uintptr_t</span><span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="kt">uintptr_t</span><span class="p">)</span><span class="o">&amp;</span><span class="n">y</span><span class="p">;</span>
254+
<span class="n"><a href="../../reference/cstdint/uintptr_t.html">std::uintptr_t</a></span><span class="w"> </span><span class="n">p</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n"><a href="../../reference/cstdint/uintptr_t.html">std::uintptr_t</a></span><span class="p">)</span><span class="o">&amp;</span><span class="n">x</span><span class="p">;</span>
255+
<span class="n"><a href="../../reference/cstdint/uintptr_t.html">std::uintptr_t</a></span><span class="w"> </span><span class="n">q</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n"><a href="../../reference/cstdint/uintptr_t.html">std::uintptr_t</a></span><span class="p">)</span><span class="o">&amp;</span><span class="n">y</span><span class="p">;</span>
256256

257257
<span class="c1">// XOR演算による値の交換。アドレスがどのように選ばれた実行であっても、</span>
258258
<span class="c1">// 最終的にqはxのアドレス、pはyのアドレスを確実に再現するため、</span>

reference/chrono/make24.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ <h2>例</h2>
263263
<span class="w"> </span><span class="n"><a href="../cassert/assert.html">assert</a></span><span class="p">(</span><span class="n"><span style="color:#ff0000">chrono::make24</span></span><span class="p">(</span><span class="n"><a href="duration/op_h.html">12h</a></span><span class="p">,</span><span class="w"> </span><span class="nb">false</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n"><a href="duration/op_h.html">0h</a></span><span class="p">);</span>
264264

265265
<span class="w"> </span><span class="n"><a href="../cassert/assert.html">assert</a></span><span class="p">(</span><span class="n"><span style="color:#ff0000">chrono::make24</span></span><span class="p">(</span><span class="n"><a href="duration/op_h.html">12h</a></span><span class="p">,</span><span class="w"> </span><span class="nb">true</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n"><a href="duration/op_h.html">12h</a></span><span class="p">);</span>
266-
<span class="w"> </span><span class="n"><a href="../cassert/assert.html">assert</a></span><span class="p">(</span><span class="n"><span style="color:#ff0000">chrono::make24</span></span><span class="p">(</span><span class="n"><a href="duration/op_h.html">1h</a></span><span class="p">,</span><span class="w"> </span><span class="nb">true</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">1u</span><span class="n">ntGMLzmDdZECqboOvFtGnALLWxohViC</span><span class="p">);</span>
266+
<span class="w"> </span><span class="n"><a href="../cassert/assert.html">assert</a></span><span class="p">(</span><span class="n"><span style="color:#ff0000">chrono::make24</span></span><span class="p">(</span><span class="n"><a href="duration/op_h.html">1h</a></span><span class="p">,</span><span class="w"> </span><span class="nb">true</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="mi">1</span><span class="n"><a href="duration/op_h.html">3h</a></span><span class="p">);</span>
267267
<span class="w"> </span><span class="n"><a href="../cassert/assert.html">assert</a></span><span class="p">(</span><span class="n"><span style="color:#ff0000">chrono::make24</span></span><span class="p">(</span><span class="n"><a href="duration/op_h.html">3h</a></span><span class="p">,</span><span class="w"> </span><span class="nb">true</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n"><a href="duration/op_h.html">15h</a></span><span class="p">);</span>
268268
<span class="w"> </span><span class="n"><a href="../cassert/assert.html">assert</a></span><span class="p">(</span><span class="n"><span style="color:#ff0000">chrono::make24</span></span><span class="p">(</span><span class="n"><a href="duration/op_h.html">11h</a></span><span class="p">,</span><span class="w"> </span><span class="nb">true</span><span class="p">)</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n"><a href="duration/op_h.html">23h</a></span><span class="p">);</span>
269269
<span class="p">}</span>

0 commit comments

Comments
 (0)