Skip to content

Commit a4ffe7c

Browse files
committed
memory: ヘッダ説明の微調整
- ヘッダ概要説明からGC関連を削除(C++23削除済み) - エンティティ列挙順序を調整(削除済み項目を下へ) - C++26 is_sufficiently_alignedリンク追加
1 parent b5dd43f commit a4ffe7c

File tree

2 files changed

+19
-16
lines changed

2 files changed

+19
-16
lines changed

reference/memory.md

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# memory
22
* memory[meta header]
33

4-
`<memory>`ヘッダでは、メモリアロケータ、未初期化領域に関する関数群、スマートポインタ、ガベージコレクションを作るためのユーティリティ関数といった、メモリを扱うための機能を定義する。
4+
`<memory>`ヘッダでは、メモリアロケータ、未初期化領域に関する関数群、スマートポインタ、アライメントに関するユーティリティ関数といった、メモリを扱うための機能を定義する。
55

66
このヘッダでは、以下の標準ヘッダをインクルードする:
77

@@ -121,10 +121,22 @@
121121
| `atomic_compare_exchange_strong_explicit` | 強い比較でメモリオーダーを指定して、`shared_ptr`の値の入れ替えをアトミックに行う (function template) | C++11<br/> C++20で非推奨 |
122122

123123

124+
## ポインタのユーティリティ
125+
126+
| 名前 | 説明 | 対応バージョン |
127+
|------|------|----------------|
128+
| [`pointer_traits`](memory/pointer_traits.md) | ポインタの型特性(class template) | C++11 |
129+
| [`to_address`](memory/to_address.md) | ポインタと見なせるオブジェクトからアドレスを取得する (function template) | C++20 |
130+
| [`addressof`](memory/addressof.md) | 変数のアドレスを必ず取得する(function template) | C++11 |
131+
| [`align`](memory/align.md) | アライメント調整された領域を得る(function) | C++11 |
132+
| [`assume_aligned`](memory/assume_aligned.md) | コンパイラへアライメントのヒントを与える(function template) | C++20 |
133+
| [`is_sufficiently_aligned`](memory/is_sufficiently_aligned.md) | ポインタのアライメントを判定する(function template) | C++26 |
134+
135+
124136
## ガベージコレクション支援(C++23で削除)
125137

126138
| 名前 | 説明 | 対応バージョン |
127-
|--------------------------------------------------|--------------------------------------------|-------|
139+
|------|------|----------------|
128140
| [`pointer_safety`](memory/pointer_safety.md) | ポインタ安全性について実装/挙動を示す列挙型(enum class) | C++11<br/>C++23で削除 |
129141
| [`get_pointer_safety`](memory/get_pointer_safety.md) | 処理系の、ポインタ安全性についての実装/挙動を取得する(function) | C++11<br/>C++23で削除 |
130142
| [`declare_reachable`](memory/declare_reachable.md) | ポインタが到達可能であることを宣言する(function) | C++11<br/>C++23で削除 |
@@ -133,17 +145,6 @@
133145
| [`undeclare_no_pointers`](memory/undeclare_no_pointers.md) | `declare_no_pointers`で宣言された範囲を無効化する(function) | C++11<br/>C++23で削除 |
134146

135147

136-
## ポインタのユーティリティ
137-
138-
| 名前 | 説明 | 対応バージョン |
139-
|----------------------------------------------|-------------------------------------------------|-------|
140-
| [`pointer_traits`](memory/pointer_traits.md) | ポインタの型特性(class template) | C++11 |
141-
| [`to_address`](memory/to_address.md) | ポインタと見なせるオブジェクトからアドレスを取得する (function template) | C++20 |
142-
| [`addressof`](memory/addressof.md) | 変数のアドレスを必ず取得する(function template) | C++11 |
143-
| [`align`](memory/align.md) | アライメント調整された領域を得る(function) | C++11 |
144-
| [`assume_aligned`](memory/assume_aligned.md) | コンパイラへアライメントのヒントを与える(function template) | C++20 |
145-
146-
147148
## 参照
148149
- [N4190 Removing `auto_ptr`, `random_shuffle()`, And Old `<functional>` Stuff](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4190.htm)
149150
- [P0718R2 Revising `atomic_shared_ptr` for C++20](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0718r2.html)

reference/memory/is_sufficiently_aligned.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,10 @@
55
* cpp26[meta cpp]
66

77
```cpp
8-
template<size_t Alignment, class T>
9-
bool is_sufficiently_aligned(T* ptr);
8+
namespace std {
9+
template<size_t Alignment, class T>
10+
bool is_sufficiently_aligned(T* ptr);
11+
}
1012
```
1113
1214
## 概要
@@ -34,7 +36,7 @@ template<size_t Alignment, class T>
3436
```cpp example
3537
#include <cassert>
3638
#include <memory>
37-
#include <news>
39+
#include <new>
3840
3941
int main()
4042
{

0 commit comments

Comments
 (0)