这两个参数的数据类型是什么

问题描述 投票:0回答:1

我最近得到了这个简单的C编程代码。我试图找到这两个参数的数据类型。但我不能。有人知道这里要使用什么数据类型吗?

这是代码。我尝试了 double 但还有一个字符串作为参数

#include <iostream>

using namespace std;

void func(double val1 ,double val2){

    cout << val1 << " " << val2 << endl;

}

int main(){

    func(8, 10);
    func(33, "Hi there");
    func(2.5, 16.5);
    return 0;

}
c++ types
1个回答
0
投票

既然您用 C++ 标记,一种解决方案是使用 函数模板

参数的类型将被模板化,因此编译器将根据需要实例化尽可能多的函数,以便与您提供的参数一起使用。

它会起作用,因为

std::cout
已经为您当前使用的所有类型提供了重载:

#include <iostream>

template <typename T1, typename T2>
void func(T1 const & val1, T2 const & val2) {
    std::cout << val1 << " " << val2 << std::endl;
}

int main() {
    func(8, 10);
    func(33, "Hi there");
    func(2.5, 16.5);
}

输出:

8 10
33 Hi there
2.5 16.5
© www.soinside.com 2019 - 2024. All rights reserved.