gpt4 book ai didi

c++ - 模板参数推导如何递归工作?

转载 作者:太空宇宙 更新时间:2023-11-04 13:23:52 27 4
gpt4 key购买 nike

我正在阅读这篇文章:http://accu.org/index.php/journals/409 .让我们举一个简单的例子:

template<typename T>
void foo(T& param){}

并调用上面的函数,如 foo("String") 。现在演绎如何递归地工作? .我的理解是演绎工作是这样的:

Arg 类型 = const char[6] 参数类型为 T& ->所以 T 必须是 -> T1[] -> 这使得参数像 T1 (&) []-> 现在 T1 必须是 const char -> 这使得参数像 const char (&)[]

我走的路对吗?谢谢

P.S -> 我最近开始学习 c++ 和编程,所以如果我先通过示例学习语言的核心而不是关注项目或庞大的算法,是否可以?谢谢

最佳答案

模板推导不会以递归方式工作,至少在术语“递归”的传统意义上是这样。 (我觉得你用错了这个词)。实际的推论相当简单。在这种特殊情况下,T&const char(&) [6](正如您正确指出的那样),这意味着 T 是 const char[6].

关于c++ - 模板参数推导如何递归工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34023347/

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