逻辑仿函数

2021-03-02 15:38:45 浏览数 (1)

功能:实现逻辑运算 函数原型:

代码语言:javascript复制
#include<iostream>
using namespace std;
#include<functional>
#include<vector>
#include<algorithm>
void  p(const vector<bool>& v)
{
	for (int i = 0; i < v.size(); i  )
	{
		cout << v[i] << " ";
	}
	cout << endl;
}

void test()
{
	//逻辑仿函数
	vector<bool> v;
	v.push_back(true);
	v.push_back(false);
	v.push_back(true);
	v.push_back(false);
	p(v);
	//逻辑非 
	vector<bool> v1;
	//v1要提前开辟大小,不然没有空间存放数据
	v1.resize(v.size());
   //搬运算法----transform
	//将v里面的数据搬运到v1里面去
	transform(v.begin(), v.end(), v1.begin(), logical_not<bool>());
	//也可以在搬运过程中进行加减乘除操作,但改变的只是v1,而非原来的容器v
	p(v1);
	p(v);
}
int main()
{
	test();
	system("pause");
	return 0;
}

0 人点赞