gpt4 book ai didi

c++ - 模板调用有什么区别?

转载 作者:行者123 更新时间:2023-11-28 05:24:10 24 4
gpt4 key购买 nike

A、B、C调用有什么区别?

#include <iostream>

using namespace std;

template<class T> T max(T a, T b) {
return (a >= b) ? a : b;
}

int main() {
float a = 4.0;
float b = 6.0f;
cout << max(a, b) << endl; //A
cout << max<double>(a, b) << endl; //B
cout << max<double>(4.0, 6.0f) << endl; //C
}

最佳答案

第一次调用 max实际上是max<float> ,第二个和第三个是一样的max<double>

但在第二次调用中 ab晋升为双倍,其中第三个例子只有6.0f提升为双倍。

关于c++ - 模板调用有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40887695/

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