Stl应用
1、撰写自己的算法和函数,结合容器和迭代器解决序列变换(如取反、平方、立方),像素变换(二值化、灰度拉伸);
代码:
void transInv(int a[], int b[], int nNum) //取反函数
{
for (int i = 0; i < nNum; i++)
{
b[i] = -a[i];
}
}
template <typename T>
void transInvT(T a[], T b[], int nNum) //取反函数模板
{
for (int i = 0; i < nNum; i++)
{
b[i] = -a[i];
}
}
void transSqr(int a[], int b[], int nNum) //平方函数
{
for (int i = 0; i < nNum; i++)
{
b[i] = a[i] * a[i];
}
}
template<typename T>
T InvT(T a) //平方函数模板
{
return -a;
}
template<typename T>
class MyThreshold {
public:
MyThreshold(int n = 128) :_nThreshold(n) {
}
int operator()(T val)
{