In the dynArray.cpp file, a template class DynArray is needed for it to correctly compile and display the given output when executed. Sample output: 0 1.68294 1.81859 0.28224 -1.5136 0 1 1 0 -1 // dynArray.cpp #include <iostream> #include <math.h> #include \"DynArray.h\" using namespace std; template <class A, class X> void set_five ( A& a ) { X x=0; for ( int i=0; i<5; i++ ) { x = (X)( 2.0*sin(double(i)) ); a.add ( x ); cout << a[i] << \" \"; } cout << endl; } int main(int argc, const char * argv[]) { DynArray<float> fa; set_five<DynArray<float>,float> ( fa ); DynArray<int> ia; set_five<DynArray<int>,int> ( ia ); return 0; } Solution Template<class DynArray> class DynArray { template <class A, class X> void set_five ( A& a ) { X x=0; for ( int i=0; i<5; i++ ) { x = (X)( 2.0*sin(double(i)) ); a.add ( x ); cout << a[i] << \" \"; } cout << endl; } int main(int argc, const char * argv[]) { DynArray<float> fa; set_five<DynArray<float>,float> ( fa ); DynArray<int> ia; set_five<DynArray<int>,int> ( ia ); return 0; } } .