我正在审核一些代码并找到类似于:
的行std::tr1::function<bool (int, int)>(//etc...
我不熟悉模板类型bool (int, int)
的语法。基于谷歌搜索,在std::tr1::function
的情况下,似乎这种语法用于定义函数的返回类型和参数。这是有道理的,但为什么这种语法有效呢?据我所知,C ++模板只能指定类型吗?
我尝试在代码中将类型的实例实例化为:
bool (int, int) test;
正如我所料,该声明无法编译。至少,语法需要是这样的: bool(test)(int,int);
bool (int, int)
被视为C ++类型吗?关于在我脑海中调和这个的任何提示?
谢谢, 亚当
答案 0 :(得分:2)