- default initialization for std::array<T, N> doesn't work well when T is primitive type - multidimensional std::array intiialization wrong => need extra ( {{ {{1, 2}}, {{3, 4}} }} ) - Why? intialziation list doesn't work well for aggregate types - grr(std::string& arr); grr("asdf") doesn't work (No implicit constructor for C array -> std::string&)