gpt4 book ai didi

c++ - 模板功能

转载 作者:太空狗 更新时间:2023-10-29 23:26:54 25 4
gpt4 key购买 nike

谁能描述下面的声明?

template<> float func<float>(char *txt)
{
blah blah
}

第二个<>是做什么用的?

最佳答案

template<>意味着这个函数是一个模板特化。第二个<float>意味着这是 float 的特化.

例如:

#include <iostream>

template <class T> void somefunc(T arg) {
std::cout << "Normal template called\n";
}

template<> void somefunc<float>(float arg) {
std::cout << "Template specialization called\n";
}

int main(int argc, char *argv[]) {
somefunc(1); // prints out "Normal template called"
somefunc(1.0f); // prints out "Template specialization called"

return 0;
}

关于c++ - 模板功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5904728/

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