C++ "delayed" template argument

c++, templates

Solution

The proper syntax for template template-parameters is as follows

template < class > struct f {}; 

template < template <class> class F > 
void function() { 
    F<int>();  //for example 
} 

...     
function < f >()

Problem

Is there direct way to do the following: ``` template < class > struct f {}; template < class F > void function() { F<int>(); //for example // ? F template <int>(); } function < f >(); ``` I have workaround by using extra class around template struct. I am wondering if it's possible to do so directly. Thanks

Original source