gpt4 book ai didi

c++如何使函数(子例程)参数成为 double vector 或整数 vector

转载 作者:行者123 更新时间:2023-11-30 01:57:15 28 4
gpt4 key购买 nike

嘿,我只是想知道在 C++ 中是否有可能在我的程序中有一个函数,作为输入接受一个 vector 或一个 vector 。这是我想要的示例:

void PrintValues(const std::string& title, std::vector<std::vector<double>>& v)
{
std::cout << title << std::endl;
for(size_t line = 0; line < v.size(); ++line)
{
for(size_t val = 0; val < v[line].size(); ++val)
{
std::cout << v[line][val] << " ";
}
std::cout << std::endl;
}
std::cout << std::endl;
}

我有两个 2d vector 我想在这个程序中打印,我想调用这个函数来打印一个是 double 的,另一个是整数。这是可能的还是我的整数会自动转换为 double ??

谢谢

最佳答案

让你的函数成为模板

template <typename T>
void PrintValues(const std::string& title, std::vector<std::vector<T> >& v)
{
std::cout << title << std::endl;
for(size_t line = 0; line < v.size(); ++line)
{
for(size_t val = 0; val < v[line].size(); ++val)
{
std::cout << v[line][val] << " ";
}
std::cout << std::endl;
}
std::cout << std::endl;
}

以及用途:

std::vector<std::vector<int> > x;
std::vector<std::vector<double> > y;
PrintValues("Int",x);
PrintValues("Doubles",y);

关于c++如何使函数(子例程)参数成为 double vector 或整数 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18938041/

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