zl程序教程

您现在的位置是:首页 >  后端

当前栏目

自定义C++ void swap(int& ra, int * pb)函数

C++amp 函数 自定义 int swap void PB
2023-09-14 09:14:25 时间

自定义swap函数

题目
简介:这是一个软考和c++考试的一个经典面试题,给出5空,然后了,检测swap函数怎么写,主要考察的就是对于指针与引用的理解,难点为,很多人都不知道第三空填啥,因为我们通常写的c++的swap函数没有这一行,下面给出我的答案。

void swap(int& ra, int * pb)

{

  int *ptemp = new int;

 *ptemp = ra;

   //第一空
   
   // 第二空

   // 第三空
}

int main()

{

  int a = 5, b = 6;

  swap( /*第四空*/ , /*第五空*/ );

 return 0;

}

答案

void swap(int& ra, int * pb)

{

  int *ptemp = new int;

 *ptemp = ra;

   //第一空
   ra = *pb;
   
   // 第二空
   *pb = *ptemp;

   // 第三空
   delete ptemp; // 这空就是释放内存
}

int main()

{

  int a = 5, b = 6;

  swap( a , &b );

 return 0;

}