function::operator=
Ersetzt das gespeicherte aufrufbare Objekt.
function& operator=(null_ptr_type npc);
function& operator=(const function& right);
template<class Fty>
function& operator=(Fty fn);
template<class Fty>
function& operator=(reference_wrapper<Fty> fnref);
Parameter
npc
Eine NULL-Zeiger-Konstante.right
Das Funktionsobjekt für die Kopie.fn
Das Objekt an den aufrufbare Wrapper.fnref
Der Code registrieren aufrufbare Wrapper.
Hinweise
Die Operatoren jeder ersetzen das aufrufbare Objekt, das von *this durch das aufrufbare Objekt verwendet wird, das als Operand übergeben wird.
Beispiel
// std_tr1__functional__function_operator_as.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;
fn1 = 0;
std::cout << std::boolalpha << "empty == " << !fn1 << std::endl;
fn1 = neg;
std::cout << std::boolalpha << "empty == " << !fn1 << std::endl;
std::cout << "val == " << fn1(3) << std::endl;
fn1 = fn0;
std::cout << std::boolalpha << "empty == " << !fn1 << std::endl;
std::cout << "val == " << fn1(3) << std::endl;
fn1 = std::cref(fn1);
std::cout << std::boolalpha << "empty == " << !fn1 << std::endl;
std::cout << "val == " << fn1(3) << std::endl;
return (0);
}
Anforderungen
Header: <functional>
Namespace: std