function::swap

交换两个可调用的对象。

void swap(function& right);

参数

  • right
    交换函数的对象。

备注

成员函数交换。*this 和 right之间的目标对象。 它在常数时执行且不会引发异常。

示例

 

// std_tr1__functional__function_swap.cpp 
// compile with: /EHsc 
#include <functional> 
#include <iostream> 
 
int neg(int val) 
    { 
    return (-val); 
    } 
 
int main() 
    { 
    std::function<int (int)> fn0(neg); 
    std::cout << std::boolalpha << "empty == " << !fn0 << std::endl; 
    std::cout << "val == " << fn0(3) << std::endl; 
 
    std::function<int (int)> fn1; 
    std::cout << std::boolalpha << "empty == " << !fn1 << std::endl; 
    std::cout << std::endl; 
 
    fn0.swap(fn1); 
    std::cout << std::boolalpha << "empty == " << !fn0 << std::endl; 
    std::cout << std::boolalpha << "empty == " << !fn1 << std::endl; 
    std::cout << "val == " << fn1(3) << std::endl; 
 
    return (0); 
    } 
 
  

要求

标头: <functional>

命名空间: std

请参见

参考

function Class

function::operator=