#include #include // scalar fill template void fill(std::vector &a, const T &c) { std::cout << "f1" << std::endl; a.push_back(c); } // vector fill template void fill(std::vector &a, const std::vector &c) { std::cout << "f2" << " "< const &a) { std::cout << "The vector elements are : "; for(int i=0; i < a.size(); i++) std::cout << a.at(i) << ' '; } int main(int argc, char **argv) { int v1(1); std::vector v2{1,2,3}; std::vector a{1,1,1}; print(a); fill(a,v1); print(a); fill(a,v2); print(a); }