Skip to content

Commit cae6a31

Browse files
valarray: 修正誤りなどを再修正
1 parent bba1848 commit cae6a31

32 files changed

+43
-32
lines changed

reference/valarray.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
(ただし、[`begin`](valarray/valarray/begin_free.md) と [`end`](valarray/valarray/end_free.md) を除く)
1212
- 本ヘッダで提供される、`const` [`valarray`](valarray/valarray.md)`<T>&` を 2 つ引数に持つ全ての関数は、当該代理の型と [`valarray`](valarray/valarray.md)`<T>` の任意の組み合わせも引数として受け付ける。
1313

14-
これらを踏まえ、本リファレンスではこれらの代理の型が使用されうる箇所は *`ValOrProxy`* として表記している。*`ValOrProxy`* を戻り値型として記載している箇所は[`valarray`](valarray/valarray.md)`<T>` か代理の型のいずれかであることを、引数型として記載している箇所は[`valarray`](valarray/valarray.md)`<T>` と代理の型のいずれでも受け取ることが可能であることを表している。
14+
これらを踏まえ、本リファレンスではこれらの代理の型が使用されうる箇所は *`ValOrProxy`* として表記している。戻り値型に *`ValOrProxy`* と表記している箇所は[`valarray`](valarray/valarray.md)`<T>` か代理の型のいずれかであることを、引数型に *`ValOrProxy`* と表記している箇所は[`valarray`](valarray/valarray.md)`<T>` と代理の型のいずれでも受け取ることが可能であることを表している。
1515

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

reference/valarray/gslice_array.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ namespace std {
1515
1616
このクラスのオブジェクトは、[`valarray`](valarray.md)クラスの[`operator[]`](valarray/op_at.md)によって返される。
1717
18+
なお、メンバ関数の引数型に *`ValOrProxy`* と表記している箇所は、[`valarray`](valarray.md)`<T>` と代理の型のいずれでも受け取ることが可能であることを表している。
19+
[`<valarray>`](../valarray.md) の概要も参照のこと。
1820
1921
テンプレートパラメータは、以下を意味する:
2022

reference/valarray/gslice_array/op_assign.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ public:
1414
void operator=(const T& value) const; // (3)
1515
```
1616
* valarray[link /reference/valarray/valarray.md]
17+
* ValOrProxy[italic]
1718

1819
## 概要
1920
- (1) : 元となる [`valarray`](../valarray.md) オブジェクトから参照によって抽出した各要素に、`ar` が参照する各要素を代入する

reference/valarray/indirect_array.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,12 @@ namespace std {
1515
1616
このクラスのオブジェクトは、[`valarray`](valarray.md)クラスの[`operator[]`](valarray/op_at.md)によって返される。
1717
18+
なお、メンバ関数の引数型に *`ValOrProxy`* と表記している箇所は、[`valarray`](valarray.md)`<T>` と代理の型のいずれでも受け取ることが可能であることを表している。
19+
[`<valarray>`](../valarray.md) の概要も参照のこと。
20+
1821
テンプレートパラメータは、以下を意味する:
1922
20-
- `T` : `valarray`クラスの要素型`T`と同じ型
23+
- `T` : [`valarray`](valarray.md)クラスの要素型`T`と同じ型
2124
2225
2326
## メンバ関数

reference/valarray/indirect_array/op_assign.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,9 @@
66

77
```cpp
88
private:
9-
indirect_array& ValOrProxy=(const indirect_array&); // (1) C++03 まで(宣言のみ)
9+
indirect_array& operator=(const indirect_array&); // (1) C++03 まで(宣言のみ)
1010

1111
public:
12-
* ValOrProxy[italic]
1312
const indirect_array& operator=(const indirect_array& ar) const; // (1) C++11 から
1413
void operator=(const ValOrProxy<T>& ar) const; // (2)
1514
void operator=(const T& value) const; // (3)

reference/valarray/mask_array.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,12 @@ namespace std {
1515
1616
このクラスのオブジェクトは、[`valarray`](valarray.md)クラスの[`operator[]`](valarray/op_at.md)によって返される。
1717
18+
なお、メンバ関数の引数型に *`ValOrProxy`* と表記している箇所は、[`valarray`](valarray.md)`<T>` と代理の型のいずれでも受け取ることが可能であることを表している。
19+
[`<valarray>`](../valarray.md) の概要も参照のこと。
20+
1821
テンプレートパラメータは、以下を意味する:
1922
20-
- `T` : `valarray`クラスの要素型`T`と同じ型
23+
- `T` : [`valarray`](valarray.md)クラスの要素型`T`と同じ型
2124
2225
2326
## メンバ関数

reference/valarray/mask_array/op_xor_assign.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ void operator^=(const ValOrProxy<T>& xs) const;
2323

2424

2525
## 備考
26-
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
26+
- 引数の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
2727
[`<valarray>`](../../valarray.md) の概要も参照のこと。
2828
- [`valarray`](../valarray.md) から抽出した要素数と `xs` の要素数が異なる場合、その挙動は未定義。
2929

reference/valarray/slice_array.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ namespace std {
1515
1616
このクラスのオブジェクトは、[`valarray`](valarray.md)クラスの[`operator[]`](valarray/op_at.md)によって返される。
1717
18+
なお、メンバ関数の引数型に *`ValOrProxy`* と表記している箇所は、[`valarray`](valarray.md)`<T>` と代理の型のいずれでも受け取ることが可能であることを表している。
19+
[`<valarray>`](../valarray.md) の概要も参照のこと。
1820
1921
テンプレートパラメータは、以下を意味する:
2022

reference/valarray/slice_array/op_assign.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ public:
1414
void operator=(const T& value) const; // (3)
1515
```
1616
* valarray[link /reference/valarray/valarray.md]
17+
* ValOrProxy[italic]
1718

1819
## 概要
1920
- (1) : 元となる [`valarray`](../valarray.md) オブジェクトから参照によって抽出した各要素に、`ar` が参照する各要素を代入する

reference/valarray/valarray.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,8 @@ valarray<int> c = a + b;
3636
3737
処理系によっては、このような演算を、CPUのSIMD命令によって並列に計算するよう最適化する。
3838
39-
さらに、式テンプレートの実装を可能とするため、任意の `valarray<T>` 型を返す関数は(メンバ関数、非メンバ関数とも)`valarray<T>` 型以外の型を返すことが規格で許可されている。
40-
`valarray<T>` の代わりに返される型がある場合、[`begin`](valarray/begin_free.md)、[`end`](valarray/end_free.md) を除くすべての `const valarray<T>&` を引数に取る関数の引数として使用可能である
39+
なお、戻り値型に *`ValOrProxy`* と表記している箇所は、[`valarray`](valarray.md)`<T>` か代理の型のいずれかであることを、引数型に *`ValOrProxy`* と表記している箇所は、[`valarray`](valarray.md)`<T>` と代理の型のいずれでも受け取ることが可能であることを表している。
40+
[`<valarray>`](../valarray.md) の概要も参照のこと。
4141
4242
4343
テンプレートパラメータは、以下を意味する:
@@ -81,7 +81,7 @@ valarray<int> c = a + b;
8181
|------------------------------------------------------------|------------------------------------------|-------|
8282
| [`operator~` (単項)](valarray/op_flip.md) | 単項 `~` 演算(ビット反転した要素を得る)| |
8383
| [`operator&=`](valarray/op_and_assign.md) | 論理積の複合代入 | |
84-
| [`operator|=`](valarray/op_or_assign.md) | 論理和の複合代入 | |
84+
| [<code>operator&#x7C;=</code>](valarray/op_or_assign.md) | 論理和の複合代入 | |
8585
| [`operator^=`](valarray/op_xor_assign.md) | 排他的論理和の複合代入 | |
8686
| [`operator<<=`](valarray/op_left_shift_assign.md) | 左シフトの複合代入 | |
8787
| [`operator>>=`](valarray/op_right_shift_assign.md) | 右シフトの複合代入 | |
@@ -143,7 +143,7 @@ valarray<int> c = a + b;
143143
| 名前 | 説明 | 対応バージョン |
144144
|----------------------------------------------------|--------------|-------|
145145
| [`operator&`](valarray/op_and.md) | 論理積 | |
146-
| [`operator|`](valarray/op_or.md) | 論理和 | |
146+
| [<code>operator&#x7C;</code>](valarray/op_or.md) | 論理和 | |
147147
| [`operator^`](valarray/op_xor.md) | 排他的論理和 | |
148148
| [`operator<<`](valarray/op_left_shift.md) | 左シフト | |
149149
| [`operator>>`](valarray/op_right_shift.md) | 右シフト | |

reference/valarray/valarray/atan2.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ return result;
7373
## 備考
7474
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7575
[`<valarray>`](../../valarray.md) の概要も参照のこと。
76-
- (1) : 'ys''xs' の要素数が異なる場合、その挙動は未定義。
76+
- (1) : `ys``xs` の要素数が異なる場合、その挙動は未定義。
7777
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7878
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
7979

reference/valarray/valarray/begin_free.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ namespace std {
4242
* std::begin[color ff0000]
4343
* std::end[link end_free.md]
4444
45-
これは、[`std::valarray`](../valarray.md)`<T>` 型を返す関数(本リファレンスでは戻り値型を *`ValOrProxy`* と表記)は、式テンプレートによる最適化を考慮して、代理の型を返すことが許可されているが、`begin` と [`end`](end_free.md) 関数はその代理の型を受け取りが可能であることを求められていないためである
45+
これは、[`std::valarray`](../valarray.md)`<T>` 型を返す関数(本リファレンスでは戻り値型を *`ValOrProxy`* と表記)は、式テンプレートによる最適化を考慮して、代理の型を返すことが許可されているが、`begin` と [`end`](end_free.md) はその代理の型を受け取りが可能であることを求められていないためである
4646
[`<valarray>`](../../valarray.md) の概要も参照のこと。
4747
4848

reference/valarray/valarray/end_free.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ namespace std {
4242
* std::begin[link begin_free.md]
4343
* std::end[color ff0000]
4444
45-
これは、[`std::valarray`](../valarray.md)`<T>` 型を返す関数(本リファレンスでは戻り値型を *`ValOrProxy`* と表記)は、式テンプレートによる最適化を考慮して、代理の型を返すことが許可されているが、`begin` と [`end`](end_free.md) 関数はその代理の型を受け取りが可能であることを求められていないためである
45+
これは、[`std::valarray`](../valarray.md)`<T>` 型を返す関数(本リファレンスでは戻り値型を *`ValOrProxy`* と表記)は、式テンプレートによる最適化を考慮して、代理の型を返すことが許可されているが、[`begin`](begin_free.md) と `end` はその代理の型を受け取りが可能であることを求められていないためである
4646
[`<valarray>`](../../valarray.md) の概要も参照のこと。
4747
4848

reference/valarray/valarray/op_and.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ return result;
6868
## 備考
6969
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7070
[`<valarray>`](../../valarray.md) の概要も参照のこと。
71-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
71+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7272
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7373
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
7474

reference/valarray/valarray/op_divide.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ return result;
6969
## 備考
7070
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7171
[`<valarray>`](../../valarray.md) の概要も参照のこと。
72-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
72+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7373
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7474
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
7575

reference/valarray/valarray/op_equal.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ return result;
7474
## 備考
7575
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7676
[`<valarray>`](../../valarray.md) の概要も参照のこと。
77-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
77+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7878
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7979
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
8080

reference/valarray/valarray/op_greater.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ return result;
7474
## 備考
7575
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7676
[`<valarray>`](../../valarray.md) の概要も参照のこと。
77-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
77+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7878
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7979
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
8080

reference/valarray/valarray/op_greater_equal.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ return result;
7474
## 備考
7575
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7676
[`<valarray>`](../../valarray.md) の概要も参照のこと。
77-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
77+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7878
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7979
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
8080

reference/valarray/valarray/op_left_shift.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ return result;
6969
## 備考
7070
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7171
[`<valarray>`](../../valarray.md) の概要も参照のこと。
72-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
72+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7373
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7474
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
7575

reference/valarray/valarray/op_less.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ return result;
7474
## 備考
7575
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7676
[`<valarray>`](../../valarray.md) の概要も参照のこと。
77-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
77+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7878
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7979
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
8080

reference/valarray/valarray/op_less_equal.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ return result;
7474
## 備考
7575
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7676
[`<valarray>`](../../valarray.md) の概要も参照のこと。
77-
- (1) : '*this''xs' の要素数が異なる場合、その挙動は未定義。
77+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7878
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7979
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
8080

reference/valarray/valarray/op_logical_and.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ return result;
7979
## 備考
8080
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
8181
[`<valarray>`](../../valarray.md) の概要も参照のこと。
82-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
82+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
8383
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
8484
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
8585

reference/valarray/valarray/op_logical_or.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ return result;
7979
## 備考
8080
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
8181
[`<valarray>`](../../valarray.md) の概要も参照のこと。
82-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
82+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
8383
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
8484
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
8585

reference/valarray/valarray/op_minus.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ return result;
6969
## 備考
7070
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7171
[`<valarray>`](../../valarray.md) の概要も参照のこと。
72-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
72+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7373
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7474
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
7575

reference/valarray/valarray/op_modulo.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ return result;
6969
## 備考
7070
- 引数、および、戻り値の型 *`ValOrProxy`* は、[`valarray`](../valarray.md)、あるいは、その代理となる型である。
7171
[`<valarray>`](../../valarray.md) の概要も参照のこと。
72-
- (1) : 'xs''ys' の要素数が異なる場合、その挙動は未定義。
72+
- (1) : `xs``ys` の要素数が異なる場合、その挙動は未定義。
7373
- C++20における(2)と(3)に対する変更は、`std::valarray<double>{} * 2` のような式が型推論に失敗しないようにするためである。
7474
なお、この変更は規格の誤り修正とみなされているため、処理系によっては C++17 以前でも使用可能となる。
7575

0 commit comments

Comments
 (0)