TS
class City
{
int lvl;
string name;
template <int size, class T>
void(*act)(Collection<size, T> &);
public:
template <int size, class T>
void Act();
};template <int size, class T>
class City
{
int lvl;
string name;
std::function<void(Collection<size, T>)> act;
public:
City(std::function<void(Collection<size, T>)> act1)
{
this->name = name;
act = act1;
}
void Act();
};


