Sdílet prostřednictvím


function Class

Obálka callable objektu.

template<class Fty>
   class function  // Fty of type Ret(T1, T2, ..., TN)
   : public unary_function<T1, Ret>       // when Fty is Ret(T1)
   : public binary_function<T1, T2, Ret>  // when Fty is Ret(T1, T2)
   {
public:
   typedef Ret result_type;

   function();
   function(nullptr_t);
   function(const function& _Right);
   template<class Fty2>
      function(Fty2 fn);
   template<class Fty2, class Alloc>
       function (reference_wrapper<Fty2>, const Alloc& _Ax);
   template<class Fty2, class Alloc>
       void assign (Fty2, const Alloc& _Ax);
   template<class Fty2, class Alloc>
       assign (reference_wrapper<Fty2>, const Alloc& _Ax);
   function& operator=(nullptr_t);
   function& operator=(const function&);
   template<class Fty2>
      function& operator=(Fty2);
   template<class Fty2>
      function& operator=(reference_wrapper<Fty2>);
   void swap(function&);

   explicit operator bool() const;
   result_type operator()(T1, T2, ....., TN) const;

   const std::type_info& target_type() const;
   template<class Fty2>
      Fty2 *target();
   template<class Fty2>
      const Fty2 *target() const;
   template<class Fty2>
      void operator==(const Fty2&) const = delete;
   template<class Fty2>
      void operator!=(const Fty2&) const = delete;
};

Parametry

  • Fty
    Typ funkce obtékání.

  • _Ax
    Funkce přidělování.

Poznámky

Třída šablony je volání obálky, jejichž podpis volání je Ret(T1, T2, ..., TN).Použít různé objekty callable uvádějte v jednotné obálky.

Některé funkce členů přijmout operandem, který názvy požadované cílový objekt.Takové operand můžete zadat několika způsoby:

fn--callable objektu fn; Po volání function uchovává kopii objektufn

fnref--callable objekt pojmenovaný fnref.get(); Po volání function objekt obsahuje odkaz nafnref.get()

right--callable objektu, drží function objektright

npc--ukazatele null; Po volání function objekt je prázdný

Ve všech případech INVOKE(f, t1, t2, ..., tN), kde f je objekt callable a t1, t2, ..., tN jsou lvalues typy T1, T2, ..., TN , musí být dobře tvarovaná a Ret není void, převést na Ret.

Prázdné function callable objekt nebo odkaz na objekt callable neudržuje objektu.

Bb982519.collapse_all(cs-cz,VS.110).gifKonstruktory

function::function

Konstrukce obalu, který je prázdný nebo uloží callable objekt libovolného typu s pevnou podpis.

Bb982519.collapse_all(cs-cz,VS.110).gifFunkce TypeDef

function::result_type

Návratový typ uložených callable objektu.

Bb982519.collapse_all(cs-cz,VS.110).gifFunkce členů

function::assign

Tento objekt funkce přiřadí callable objektu.

function::swap

Zaměnit callable dva objekty.

function::target

Je callable uvedené zkoušky uloženy callable objektu.

function::target_type

Získá callable objektu zadejte informace.

Bb982519.collapse_all(cs-cz,VS.110).gifOperátory

function::operator unspecified

Zkoušky, pokud existuje uložené callable objektu.

function::operator()

Volá callable objektu.

function::operator=

Nahradí uložené callable objektu.

Požadavky

Záhlaví: <functional>

Obor názvů: std

Viz také

Referenční dokumentace

mem_fn Function

reference_wrapper Class