title: Creating ArrayBuilders in a Loop
body: <p>Is there any way to create a dynamic container of <code>arrow::ArrayBuilder</code> objects? Here is an example</p>
  <pre class="lang-cpp prettyprint-override"><code>int main(int argc, char** argv) {
    std::size_t rowCount = 5;
    arrow::MemoryPool* pool = arrow::default_memory_pool();  
    std::vector&lt;arrow::Int64Builder&gt; builders;
    for (std::size_t i = 0; i &lt; 2; i++) {
      arrow::Int64Builder tmp(pool);
      tmp.Reserve(rowCount);
      builders.push_back(tmp);
    }
  
    return 0;
  }
  
  </code></pre>
  <p>This yields <code>error: variable ‘arrow::Int64Builder tmp’ has initializer but incomplete type</code></p>
  <p>I am ideally trying to build a collection that will hold various builders and construct a table from row-wise data I am receiving. My guess is that this isn't the intended use for builders, but I couldn't find anything definitive in the Arrow documentation</p>