decltype中的哪些函数不被调用?

时间:2018-07-22 02:46:29

标签: c++

我在弄乱模板,发现提供了一个示例,在decltype语句中调用的函数没有执行:

template<typename Func, typename... Args>
auto Call(Func func, Args&&... args) -> decltype(func(std::forward<Args>(args)...))
{
  return func(std::forward<Args>(args)...);
}

void main()
{
  std::cout << Call([](int x, int y){ std::cout << x << y << std::endl; return true; }, 1, 2) << std::endl;
  std::cin.ignore();
}

这是为什么?我并不是想在声明中称呼它,我只是很好奇为什么会这样。

0 个答案:

没有答案