gpt4 book ai didi

c++ - 推导显式特化函数模板类型

转载 作者:太空狗 更新时间:2023-10-29 20:33:07 25 4
gpt4 key购买 nike

the following code GCC 无法编译 (1)(无法推断 F),但成功编译 (2)。这里的关键点是 bar 模板推导的返回类型,否则 GCC 不会失败。

但是,Clang 编译整个代码没有错误。

在这种情况下,除了 b 是指向函数的指针之外,(1) 和 (2) 之间的本质区别是什么?是 GCC 中的错误,还是这里存在格式错误?

template<class>
auto bar() {
return 0;
}

template<class F>
void foo(F&&) {
}

int main () {
foo(bar<int>); // (1)

auto b = bar<int>;
foo(b); // (2)
}

最佳答案

是的,这是一个已经存在了一段时间的 GCC 错误:https://gcc.gnu.org/bugzilla/show_bug.cgi?format=multiple&id=64194

关于c++ - 推导显式特化函数模板类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57153796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com