gpt4 book ai didi

c++ - 返回模板类的函数中的C++空尖括号

转载 作者:行者123 更新时间:2023-12-01 14:39:33 24 4
gpt4 key购买 nike

在大量的libtorch(C++ PyTorch)代码here中,我看到了我之前从未见过的奇怪的C++语法:

Example<> get(size_t index);

这定义了一个函数 get,该函数确切返回什么?什么是 Example<>

这是否仅仅是意味着它可以为任何类型的 Example<T>返回 T,并且有点像 auto

另外,作为将来的引用,是否有诸如 Example<int>之类的名称(可能类似于模板化的类?),以将其与不是通过模板创建的其他类进行区分?

最佳答案

如果您检查declaration of Example

template<typename Data = Tensor, typename Target = Tensor>
STRUCT Example


您会发现它具有两个带有 default template arguments的模板参数,然后 Example<>在指定默认模板参数时引用实例化,即与 Example<Tensor, Tensor>相同。

关于c++ - 返回模板类的函数中的C++空尖括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61315132/

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