功能:实现逻辑运算 函数原型:
代码语言: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;
}