<> - прочитать это как шаблон;
Я могу сделать это:
void f() {}
//Here I'm declaring a fnc as a <> param
template<void (*fnc)()>
struct Factor { };
int main()
{
Factor<f> fac;
return 0;
}
, но я не могу сделать это:
#include <sstream>
template<class R, class T>
R make_(T first, T second)
{
std::stringstream interpreter;
R result = R();
interpreter << first << '.' << second;
interpreter >> result;
return result;
}
//Here I'm (trying) to declare fnc <> as a <> param
template<template<class T,class R> R (*fnc)(T,T)>
struct Factor { };
int main(int argc, char* argv[])
{
Factor<make_> fac;
return 0;
}
BIG Qявляется: Как (если возможно) я могу объявить в качестве параметра шаблона шаблон fnc?
Редактировать
При условии, что я использовал совет Армена: Я хотел быбыть в состоянии сделать что-то вроде этого (в основном):
Factor<f<"1","02">> m;
Тогда в m я мог бы сделать двойной тип из этих аргументов ("1", "02")