两个函数变量合并到一个函数中

Two functions variables in to a single function

本文关键字:函数 一个 合并 两个 变量      更新时间:2023-10-16

我在两个不同的函数中有两个变量,我想将它们存储在第三个函数中,而不使用全局变量。怎么做呢?

像这样的

void function1() { 
  a = 1;
  b = 2;
}
void function2() {
  c = 3;
  d = 4;
}
void function3 () {
  cout << a;  
  cout << b;  
  cout << c;  
  cout << d;  
}

您的函数可以return值,以便您可以将变量传递给其他函数,如

std::pair<int, int> function1() {
    int a = 1;
    int b = 2;
    return {a, b};
}
std::pair<int, int> function2() {
    int c = 3;
    int d = 4;
    return {c, d};
}
void function3 () {
    int a, b, c, d;
    std::tie(a, b) = function1();
    std::tie(c, d) = function2();
    std::cout << a;  
    std::cout << b;  
    std::cout << c;  
    std::cout << d;  
}
演示工作

使函数成为类的方法,变量成为类的属性。

class A
{
public:
int a;
int b;
int c;
int d;
void function1() { 
  a = 1;
  b = 2;
}
void function2() {
  c = 3;
  d = 4;
}
void function3 () {
  cout << a;  
  cout << b;  
  cout << c;  
  cout << d;  
}
};

使用引用传递:

int main() {
    int a;
    int b;
    function1(a, b);
    int c;
    int d;
    function2(c, d);
    function3(a, b, c, d);
    return 0;
}
void function1(int& a, int& b) { 
  a = 1;
  b = 2;
}
void function2(int& c, int& d) {
  c = 3;
  d = 4;
}
void function3(int a, int b, int c, int d) {
  cout << a;  
  cout << b;  
  cout << c;  
  cout << d;  
}

您可以通过引用传递它们

#include<iostream>
using namespace std;
void function1(int &a,int &b) {
    a = 1;
    b = 2;
}
void function2(int &c, int &d) {
    c = 3;
    d = 4;
}
void function3(int a1,int b1,int c1,int d1) {
    cout << a1;
    cout << b1;
    cout << c1;
    cout << d1;
}
int main(){
    int a = 0, b = 0, c = 0, d = 0;
    function1(a, b);
    function2(c, d);
    function3(a, b, c, d);

}
相关文章: