Skip to content

Commit afd10bb

Browse files
authored
Update std.md
"この機能が必要になった背景・経緯"を追加
1 parent fef3ffc commit afd10bb

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

module/std.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,23 @@ int main() {
4747
}
4848
```
4949

50-
グローバル名前空間にも定義を導入したい場合、[`std.compat`](std.compat.md)を使用できる。
50+
グローバル名前空間にも定義を導入したい場合、`std`の代わりに[`std.compat`](std.compat.md)を使用できる(両方を使う必要はない)。
51+
52+
## この機能が必要になった背景・経緯
53+
54+
C++20に言語機能としての[モジュール](/lang/cpp20/modules.md)を追加する議論と並行して、標準ライブラリをモジュールへ再編する議論も行われていた。
55+
例えば、[P0581R1](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0581r1.pdf)では以下のモジュールが提案されている。
56+
57+
- `std.fundamental`
58+
- `std.core`
59+
- `std.io`
60+
- `std.os`
61+
- `std.concurrency`
62+
- `std.math`
63+
- `std`
64+
65+
しかし、標準ライブラリ全体の再編はあまりにも壮大であり、C++20には間に合わなかった。
66+
これではモジュールの恩恵を受けるのが難しいということで、最小限のモジュールとして`std`がC++23に間に合うように追加された。
5167

5268
## バージョン
5369
### 言語

0 commit comments

Comments
 (0)