类模板初始化有关问题

类模板初始化问题
template <typename type, int size>
class ARRAY
{
public:
  type data[size];
//已写构造函数
}

class A{
 public:
  ARRAY<int,4> m_button;
  int m_fader;  
}

我现在想初始化类A.
A a={{1,1,1,1},1};这样写vs2013报错,应该怎么写
------解决思路----------------------
引用:
你好,ARRAY的构造函数我的程序好像不能删除,你说加一个支持初始化列表的构造函数该怎么加?


下面的是我原来的ARRAY构造函数
template <typename type, int size>
ARRAY<type, size>::ARRAY()
{
  int index = 0;
  type* pObj = NULL;
  for(index = 0; index < size; index++){
    pObj = &data[index];
    new(pObj)(type);
  }
}

比如这样:
    ARRAY(std::initializer_list<type> l)
    {
        std::copy(l.begin(), l.end(), data);
    }

记得#include <initializer_list>