三个函数方法怎么动态传值并push出来

问题:怎么怎么把方法一和方法三放在方法二中计算出距离,并且把距离和方法二中的arr数组一起push出来,方便后面渲染。
注:希望详细一点,怕看不懂,谢谢了

方法一:是获取用户当前的位置,经度和纬度

img

方法二:获取数据库中的各个帖子的位置,经度和纬度

img

方法三:计算商家和用户之间的距离的方法

img

使用promise

Page({
  data: {
  },
  onShow() {
    this.getDistance()
  },
  // 获取用户位置
  findxy() {
    return new Promise((reslove, reject) => {
      wx.getLocation({
        success: res => {
          reslove(res)
        },
        fail: err => {
          reject(err)
        }
      })
    })
  },
  // 获取帖子位置
  demo() {
    return new Promise((reslove, reject) => {
      setTimeout(() => {
        reslove({
          longitude: 105.24,
          latitude: 26.123
        })
      }, 1000)
    })
  },
  // 计算距离
  async getDistance() {
    const userPos = await this.findxy()
    const comPos = await this.demo()
    console.log(userPos);
    console.log(comPos);
  }
})

需要用到全局变量,你声明一个全局变量来存取

第一种:
#include
using namespace std;
void myswap(int x,int y)
{
   int t;
   t=x;
   x=y;
   y=t;
}
int main()
{
   int a,b;
   cout<<"请输入带交换的两个整数"<<endl;
   cin>>a>>b;
   myswap(a,b);
   cout<<"调用交换函数后的结果是:"<<endl;
   cout<<a<<"  "<<b<<endl;
   return 0;
}

运行结果:

注释:该方法在调用myswap函数时开辟的内存空间在函数调用结束时会释放掉,因此没有起到传值的效果。

第二种:
#include
using namespace std;
void myswap(int *p1,int *p2)
{
   int t;
   t=*p1;
   *p1=*p2;
   *p2=t;
}
int main()
{
   int a,b;
   cout<<"请输入带交换的两个整数"<<endl;
   cin>>a>>b;
   myswap(&a,&b);
   cout<<"调用交换函数后的结果是:"<<endl;
   cout<<a<<"  "<<b<<endl;
   return 0;
}
运行结果:

注释:此方法中,运用指针,调用函数时,将变量的地址交换,成功起到了数值的交换。

第三种:
#include
using namespace std;

void myswap(int &x,int &y)
{
int t;
t=x;
x=y;
y=t;
}
int main()
{
int a,b;
cout<<"请输入带交换的两个整数"<<endl;
cin>>a>>b;

myswap(a,b);
cout<<"调用交换函数后的结果是:"<<endl;
cout<<a<<"  "<<b<<endl;
return 0;
}

运行结果:

注释:此程序运用了引用,给需要交换的变量“另起一个名字”,起到了交换的作用。