如何从两个不同的函数传递参数

How to pass arguments from two different functions

本文关键字:函数 参数 两个      更新时间:2023-10-16

我有一个基本问题:

有一个函数可以接受六个参数:

void dataSlot(double val1, double val2, double val3, double val4, double val5, double val6);

如何同时从两个不同的函数传递这些参数?

void functionOne()
{
// val1, val2 and val3 from functionOne

}
void functionTwo()
{
// val4, val5 and val6 from functionTwo

}

返回每个函数生成的值,并在拥有所有值时使用它们:

#include <array>
std::array<double, 3> functionOne()
{
// ...
return {val1, val2, val3};
}
std::array<double, 3> functionTwo()
{
// ...
return {val4, val5, val6};
}
void overallFunction()
{
auto firstThree = functionOne();
auto lastThree = functionTwo();
dataSlot(firstThree[0], firstThree[1], firstThree[2], lastThree[0], lastThree[1], lastThree[2]);
}

在文件中创建变量,然后从第一个 void 开始设置它;

double v1, v2, v3....;
void dataSlot(double val1, double val2, double val3....) {
v1 = val1;
v2 = val2;
v3 = val3;
....
}

然后,您可以在任何地方使用 v1 v2 和 v3。

你可以尝试添加到你的fnc:void functionOne(double val1, double val2, double val3( {do smthng} void functionTwo(double val4, double val5, double val6({do smthng} 并从 void dataSlot(({functionOne (1,2,3( 启动它;函数二(4,5,6( }