#include template < typename T > int spaceOf ( T x ) { int bytes = sizeof(x); return bytes/4 + (bytes%4>0); // size of memory cell is 4 bytes } /* template < typename T > int spaceOf () { int bytes = sizeof(T); return bytes/4 + (bytes%4>0); } */ /* template < typename T1, typename T2 > void f ( T1 v1, T2 v2 ) { std::cout << v1 << " " << v2 << std::endl; } */ /* template < int N, typename T > T power ( T v ) { T res = v; for ( int i=1; i() << std::endl; std::cout << spaceOf() << std::endl; std::cout << "-------------" << std::endl; std::cout << spaceOf(x1) << std::endl; std::cout << spaceOf(x2) << std::endl; */ /* f(2.2,1); // implicit f(2.2,1); // explicit complete f(2.2,1); // explicit incomplete f(2.2,1); // explicit complete */ /* std::cout << power<3>(2) << std::endl; std::cout << power<5, int>(1.2) << std::endl; std::cout << power<5>(1.2) << std::endl; */ return 0; }