STL —— for_each与仿函数、函数指针

原创 2012年03月26日 17:33:10
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

class PrintInt
{
public:
    void operator() (int elem) const
    {
        cout << elem << '\t';
    }
};

class PrintInt2
{
public:
    PrintInt2(int x)
        : m_x(x)
    { }

    void operator() (int elem) const
    {
        cout << elem + m_x << '\t';
    }

private:
    int m_x;
};

typedef void (*op)(int &elem);
void Func(int &elem)
{
    cout << 2*elem << '\t';
}

int main(void)
{
    vector<int> coll;
    op p = Func;

    for (int i=1; i<=9; i++)
    {
        coll.push_back(i);
    }

    for_each(coll.begin(), coll.end(), PrintInt());
    cout << endl;

    for_each(coll.begin(), coll.end(), PrintInt2(10));
    cout << endl;
    
    for_each(coll.begin(), coll.end(), Func);
    cout << endl;
    
    for_each(coll.begin(), coll.end(), p);
    cout << endl;
    
    return 0;
}

版权声明:本文为博主原创文章,转载请注明来源(三家店 - 泊客网 3inns.cn)。

相关文章推荐

浅析STL 谓词 + 仿函数 + 函数指针(c)

一:起因 (0)提到C++ STL,首先被人想到的是它的三大组件:Containers(容器), Iterators(迭代器), Algorithms(算法)。容器为用户提供了常用的数据结构(如,ve...

STL的仿函数 和函数指针传参

C_age.h //在C语言时代,要将函数当做参数传递,唯有通过函数指针 //以下是用函数指针实现参数传递的示例 # include # include using namespace std; ...

for_each,count,mismatch等STL算法在VS2013下的实现以及辅助函数的源码解析

简要解析了几个STL算法在VS2013下的实现源码
  • x_ish
  • x_ish
  • 2015-06-16 19:27
  • 477

stl算法中for_each的调用函数要注意的问题:

昨天我得同事遇到一个问题,问题抽象如下://####################################################################### //# Au...

STL (1)for_each 函数

/* // TEMPLATE FUNCTION for_each // template inline _Fn1 for_each(_InIt _First, _InIt _Last, _Fn1...

c++ 标准模板库 STL 算法之 for_each 函数的使用用法详解

std::for_each template Function for_each (InputIterator first, InputIterator last, Function f...

[C++ 2011 STL (VS2012 Update4) 源代码阅读系列(3)]模板函数指针的的各种组合以及调用的方式

// function.cpp : /* 测试例子演示了函数指针的的各种组合以及调用的方式 如果你的编译器编译失败,请尽可能的先去掉 const 后编译,如果全部去掉后 还是编译失败,请把你的编译器升...
  • hzhxxx
  • hzhxxx
  • 2013-08-12 16:50
  • 1071

STL:从for_each到函数对象再到bind函数

这篇讲得实在太好了,忍不住转啦 转自:http://www.cnblogs.com/Purple_Xiapei/archive/2012/05/27/2520477.html Abstract...
  • ylf13
  • ylf13
  • 2014-03-06 18:23
  • 1083

记一次实验——复杂函数指针的调用

下午突然发愤决定搞定复杂指针的相关问题,看了几篇大大们的文章后,感觉略有收获。 个人的总结:从非保留字读起,如果有多个非保留字(如函数指针中的形参名,虽然这并没有必要),从最左边的读起。此后...

学习C++——函数指针

函数指针指向的是函数而不是对象。 bool length(const string &, const string &);如果要声明一个指向该函数的指针,只需要将指针替换函数名。 bool (*pf)...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)