搜索
简帛阁>技术文章>我们常说的swap函数到底该怎么使用?

我们常说的swap函数到底该怎么使用?

@ac不知深

简述

对于初学者来说交换函数肯定是避免不了的
最简单也是最直接的方法是,定义一个临时变量temp,从而完成a与b的交换
(此时规定int a,b;int temp;)

{<!-- -->
	temp=a;
	a=b;
	b=temp;
}

正文

当然对于刚刚入门C语言中的学习者来说,这样是最好理解,也是最好记忆的一种。
但是我们学习写代码更多数的时候是需要满足实际的运用,比如代码量的时间空间效率等等(此处应该不会涉及那么复杂的问题)。
所以我们可以再使用C++程序的一个swap函数。这个函数需要在建立C++的文件目录下,如下图:

后缀为.cpp文件。
如果是初学者头文件建议使用#include 这个万能头文件。这里包含了常用的一些库(最初写一些acm题很是喜欢),减少了记忆头文件的麻烦。
网上我看了其他人的答案,有说是在#include < algorithm="">,也有说是在#include < iostream="">,我更倾向于在using namespace std的std标准名词空间里。

这里先埋个坑。如果有想深度了解的同学评论告诉我,我单独写一个讨论。

以上介绍完,我们可以直接来看看如何使用swap函数。继承以上的例子,a,b可以直接写成:

swap(a,b)

运行看看有没有交换
代码
结果
a,b两个参数是已经交换了。

@ac不知深简述对于初学者来说交换函数肯定是避免不了的最简单也是最直接的方法是,定义一个临时变量temp,从而完成a与b的交换(此时规定inta,b;inttemp;){<!>tempa;
前言针对某一类问题的解决,我们可能需要借助算法来实现,实现的手段也可能是各式各样的。虽然最终都解决了问题,但是各个解决手段,也就是算法还是存在优劣之分的。既然存在比较,那肯定就有一个标准供来参考,那么
CAS(Compareandswap),即比较并交换,也是实现我们平时所说的自旋锁或乐观锁的核心操作。它的实现很简单,就是用一个旧的预期的值和内存值进行比较,如果两个值相等,就用新的值替换内存值,并
智能手环,智能手表,智能眼镜,我们到底怎么选?智能手机的普及基本上毫无阻碍就成为全球的主流。如果智能穿戴设备想要走上与智能手机覆盖全球的道路,这个时间又该是多久呢。当然,目前在年轻人的群体当中,越
公众号【编程珠玑】:专注但不限于分享计算机编程基础,Linux,C语言,C++,Python,数据库等编程相关[原创]技术文章,号内包含大量经典电子书和视频学习资源。欢迎一起交流学习,一起修炼计算机“
在如今互联网飞速发展的年代,带动了不少互联网的大佬,这些大佬的崛起必然会引起别人模仿,但在模仿的同时大家都在网上不断的寻找各种方法创建一个属于自己的平台,也就算自己的网站,首先我们在模仿或者创新的同时
三高人群作为一名开发者,我们最长听到的就是编程界的三高:高性能、高并发、高可用。听起来非常高大上,但是性能到底如何呢?又如何评定呢?这次我们谈一谈性能测试,看一看到底什么样才叫做高性能。本文主要从以
文地址:https://wwwyanbinghucom/2019/01/28/7442html前言我们都知道使用const关键字限定一个变量为只读,但它是真正意义上的只读吗?实际中又如何使用con
大家好,我是【架构摆渡人】,一只十年的程序猿。这是分库分表系列的第一篇文章,这个系列会给大家分享很多在实际工作中有用的经验,如果有收获,还请分享给更多的朋友。其实这个系列有录过视频给大家学习,但很多读
第一层:物理层,TCP/IP里无对应;第二层:数据链路层,对应TCP/IP的链接层;第三层:网络层,对应TCP/IP的网际层;第四层:传输层,对应TCP/IP的传输层;第五、六、七层:统一对应到TCP