std::function<R(Args...)>::swap
来自cppreference.com
< cpp | utility | functional | function
void swap( function& other )noexcept; | (C++11 起) | |
交换 *this 与 other
存储的可调用对象。
目录 |
[编辑]参数
other | - | 要与之互换存储可调用对象的函数包装 |
[编辑]返回值
(无)
[编辑]示例
运行此代码
#include <functional>#include <iostream> void foo(constchar* str, int x){std::cout<<"foo(\""<< str <<"\", "<< x <<")\n";} void bar(constchar* str, int x){std::cout<<"bar(\""<< str <<"\", "<< x <<")\n";} int main(){std::function<void(constchar*, int)> f1{foo};std::function<void(constchar*, int)> f2{bar}; f1("f1", 1); f2("f2", 2); std::cout<<"f1.swap(f2);\n"; f1.swap(f2); f1("f1", 1); f2("f2", 2);}
输出:
foo("f1", 1) bar("f2", 2) f1.swap(f2); bar("f1", 1) foo("f2", 2)
[编辑]参阅
交换两个 std::move_only_function 对象的目标 ( std::move_only_function 的公开成员函数) |