tmp/tmpp1d7ymzm/{from.md → to.md}
RENAMED
|
@@ -1,8 +1,8 @@
|
|
| 1 |
### Class template `indirect_array` <a id="template.indirect.array">[[template.indirect.array]]</a>
|
| 2 |
|
| 3 |
-
####
|
| 4 |
|
| 5 |
``` cpp
|
| 6 |
namespace std {
|
| 7 |
template<class T> class indirect_array {
|
| 8 |
public:
|
|
@@ -36,15 +36,15 @@ operator
|
|
| 36 |
``` cpp
|
| 37 |
indirect_array<T> valarray<T>::operator[](const valarray<size_t>&).
|
| 38 |
```
|
| 39 |
|
| 40 |
It has reference semantics to a subset of an array specified by an
|
| 41 |
-
`indirect_array`. Thus the expression `a[indirect] = b;` has the
|
| 42 |
-
of assigning the elements of `b` to the elements in `a` whose
|
| 43 |
-
appear in `indirect`.
|
| 44 |
|
| 45 |
-
####
|
| 46 |
|
| 47 |
``` cpp
|
| 48 |
void operator=(const valarray<T>&) const;
|
| 49 |
const indirect_array& operator=(const indirect_array&) const;
|
| 50 |
```
|
|
@@ -68,11 +68,11 @@ a[indirect] = b;
|
|
| 68 |
results in undefined behavior since element 4 is specified twice in the
|
| 69 |
indirection.
|
| 70 |
|
| 71 |
— *end example*]
|
| 72 |
|
| 73 |
-
####
|
| 74 |
|
| 75 |
``` cpp
|
| 76 |
void operator*= (const valarray<T>&) const;
|
| 77 |
void operator/= (const valarray<T>&) const;
|
| 78 |
void operator%= (const valarray<T>&) const;
|
|
@@ -91,11 +91,11 @@ elements of the `valarray<T>` object to which the `indirect_array`
|
|
| 91 |
object refers.
|
| 92 |
|
| 93 |
If the `indirect_array` specifies an element in the `valarray<T>` object
|
| 94 |
to which it refers more than once, the behavior is undefined.
|
| 95 |
|
| 96 |
-
####
|
| 97 |
|
| 98 |
``` cpp
|
| 99 |
void operator=(const T&) const;
|
| 100 |
```
|
| 101 |
|
|
|
|
| 1 |
### Class template `indirect_array` <a id="template.indirect.array">[[template.indirect.array]]</a>
|
| 2 |
|
| 3 |
+
#### Overview <a id="template.indirect.array.overview">[[template.indirect.array.overview]]</a>
|
| 4 |
|
| 5 |
``` cpp
|
| 6 |
namespace std {
|
| 7 |
template<class T> class indirect_array {
|
| 8 |
public:
|
|
|
|
| 36 |
``` cpp
|
| 37 |
indirect_array<T> valarray<T>::operator[](const valarray<size_t>&).
|
| 38 |
```
|
| 39 |
|
| 40 |
It has reference semantics to a subset of an array specified by an
|
| 41 |
+
`indirect_array`. Thus, the expression `a[{}indirect] = b;` has the
|
| 42 |
+
effect of assigning the elements of `b` to the elements in `a` whose
|
| 43 |
+
indices appear in `indirect`.
|
| 44 |
|
| 45 |
+
#### Assignment <a id="indirect.array.assign">[[indirect.array.assign]]</a>
|
| 46 |
|
| 47 |
``` cpp
|
| 48 |
void operator=(const valarray<T>&) const;
|
| 49 |
const indirect_array& operator=(const indirect_array&) const;
|
| 50 |
```
|
|
|
|
| 68 |
results in undefined behavior since element 4 is specified twice in the
|
| 69 |
indirection.
|
| 70 |
|
| 71 |
— *end example*]
|
| 72 |
|
| 73 |
+
#### Compound assignment <a id="indirect.array.comp.assign">[[indirect.array.comp.assign]]</a>
|
| 74 |
|
| 75 |
``` cpp
|
| 76 |
void operator*= (const valarray<T>&) const;
|
| 77 |
void operator/= (const valarray<T>&) const;
|
| 78 |
void operator%= (const valarray<T>&) const;
|
|
|
|
| 91 |
object refers.
|
| 92 |
|
| 93 |
If the `indirect_array` specifies an element in the `valarray<T>` object
|
| 94 |
to which it refers more than once, the behavior is undefined.
|
| 95 |
|
| 96 |
+
#### Fill function <a id="indirect.array.fill">[[indirect.array.fill]]</a>
|
| 97 |
|
| 98 |
``` cpp
|
| 99 |
void operator=(const T&) const;
|
| 100 |
```
|
| 101 |
|