title: How to concatenate 2 Arrays based on templates?
body: <p>I'm trying to get familiar with C++ templates. I need to write a template of function that concatenates 2 arrays:</p>
  
  <pre><code>template&lt;typename T, int Size&gt;
  class Array
  {
  public:
      void push(int i, const T&amp; t) { _elem[i] = t; }
  private:
      T _elem[Size];
  };
  </code></pre>
  
  <p>For example I have 2 arrays:</p>
  
  <pre><code>Array&lt;int,3&gt; a1;
  Array&lt;int,4&gt; a2;
  </code></pre>
  
  <p>I don't know how to write this function, that will return </p>
  
  <pre><code>Array&lt;int,7&gt;. 
  </code></pre>
  
  <p>How should header of this function look like?</p>