_array</code> would be declared:
</p>
<pre class="programlisting">multi_array&lt;int,3&gt; A(extents[3][4][5]).</pre>
<p>
</p>
<p><b>Synopsis.&#160;</b></p>
<pre class="programlisting">
template &lt;std::size_t NumRanges&gt;
class *implementation_defined* {
public:
  typedef multi_array_types::index index;
  typedef multi_array_types::size_type size_type;

  template &lt;std::size_t NumRanges&gt; class gen_type;

  gen_type&lt;NumRanges+1&gt;::type  operator[](const range&amp; a_range) const;
  gen_type&lt;