From Jason Turner

[array.cons]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmplxelrke4/{from.md → to.md} +9 -10
tmp/tmplxelrke4/{from.md → to.md} RENAMED
@@ -1,19 +1,18 @@
1
- #### `array` constructors, copy, and assignment <a id="array.cons">[[array.cons]]</a>
2
 
3
- The conditions for an aggregate ([[dcl.init.aggr]]) shall be met. Class
4
  `array` relies on the implicitly-declared special member functions (
5
- [[class.ctor]], [[class.dtor]], and [[class.copy]]) to conform to the
6
- container requirements table in  [[container.requirements]]. In addition
7
- to the requirements specified in the container requirements table, the
8
- implicit move constructor and move assignment operator for `array`
9
- require that `T` be `MoveConstructible` or `MoveAssignable`,
10
- respectively.
11
 
12
  ``` cpp
13
  template<class T, class... U>
14
  array(T, U...) -> array<T, 1 + sizeof...(U)>;
15
  ```
16
 
17
- *Requires:* `(is_same_v<T, U> && ...)` is `true`. Otherwise the program
18
- is ill-formed.
19
 
 
1
+ #### Constructors, copy, and assignment <a id="array.cons">[[array.cons]]</a>
2
 
3
+ The conditions for an aggregate [[dcl.init.aggr]] shall be met. Class
4
  `array` relies on the implicitly-declared special member functions (
5
+ [[class.default.ctor]], [[class.dtor]], and [[class.copy.ctor]]) to
6
+ conform to the container requirements table in 
7
+ [[container.requirements]]. In addition to the requirements specified in
8
+ the container requirements table, the implicit move constructor and move
9
+ assignment operator for `array` require that `T` be
10
+ *Cpp17MoveConstructible* or *Cpp17MoveAssignable*, respectively.
11
 
12
  ``` cpp
13
  template<class T, class... U>
14
  array(T, U...) -> array<T, 1 + sizeof...(U)>;
15
  ```
16
 
17
+ *Mandates:* `(is_same_v<T, U> && ...)` is `true`.
 
18