第15周阅读程序5

来源:互联网 发布:淘宝怎么开直播卖衣服 编辑:程序博客网 时间:2024/05/05 15:10
#include <iterator>#include <algorithm>#include <functional>#include <iostream>#include <vector>using namespace std;class Angle{    int degrees;public:    Angle(int deg) : degrees(deg) {}    int mul(int times)    {        return degrees *= times;    }};int main(){    int x[] = {1, 2, 4, 5, 8};    vector<Angle> va;    for(int i =10; i <= 50; i += 10)        va.push_back(Angle(i));    transform(va.begin(), va.end(), x, ostream_iterator<int>(cout , "  "), mem_fun_ref(&Angle::mul));    cout << endl;    return 0;}



运行结果:


过程分析:

STL 标准库中的函数适配器辅助函数说明

适配器辅助函数                                                           功能说明

ptr_fun                                                           辅助构造一般函数指针的pointer_to_unary_function或pointer_to_binary_function适配器实例

mem_fun                                                       辅助构造mem_fun_t等成员函数适配器实例,返回一元或二元函数对象

mem_fun_ref                                                辅助构造mem_fun_ref_t等成员函数适配器实例,返回一元或二元函数对象


0 0
原创粉丝点击