写惯了python,对于C++的语法越来越生疏,不同于python中函数可以return多个变量,C++的函数要想返回多个参数可以利用指针实现。
因为在函数内部的变量都是局部变量,所以当参数传入函数中,不return不会改变函数之外的全局变量的值。但是如果传入指针参数或者地址参数,则可以实现对外部变量的改变。有以下2种做法:
1、函数定义:
void function(int &a){ a = 500; //return; //void时可以省略return }
函数调用:
int b = 10; function(b);
cout << b << ' ';
如此,输出的b值为500。
2、函数定义:
void function(int *a){ *a = 500; //return; }
函数调用:
int b = 10; function(&b);
cout << b << ' ';
如此,输出的b值为500。