gpt4 book ai didi

c++显式实例化--函数模板--替换一个隐式实例化来学习它

转载 作者:行者123 更新时间:2023-11-30 03:06:03 24 4
gpt4 key购买 nike

我正在阅读 c++ primer plus,但在理解隐式实例化的工作原理时遇到了一些问题。我还没有学过类,所以我只是在处理函数。我想我了解隐式实例化(函数模板)的基础知识,但我只是不了解显式实例化。我在下面有一个使用模板的函数,有人可以告诉我如果使用显式实例化这样的函数将如何编写。你可以改变它的工作方式,但要保持简单。我真的很感激。这将帮助我理解语法及其用法。

  2 #include <iostream>
3
4 template <typename T>
5 void show(T,T);
6
7
8 int main()
9 {
10 int a = 10, b = 12;
11 char c = 'x', d = 'y';
12
13 show(a,b);
14 show(c,d);
15
16 return 0;
17 }
18
19 template <typename T>
20 void show(T a, T b )
21 {
22 std::cout << "I used the int version " << a << " " << b << "\n";
23 }

最佳答案

只需做一个 Show<int>(c, d)请注意,我已经明确实例化了 int版本,但通过了 char参数。那是(一个相当简单的)显式实例化,但您实际上可能指的是 explicit specialization .

关于c++显式实例化--函数模板--替换一个隐式实例化来学习它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7058323/

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