Udostępnij za pośrednictwem


function Class

Otoka wpłacone obiektu.

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 funkcji do zawijania.

  • _Ax
    Funkcja programu przydzielania.

Uwagi

Klasa szablonu jest otoką wywołanie, którego podpis wywołanie jest Ret(T1, T2, ..., TN).Umożliwia on ująć różnych obiektów wpłacone w jednolitych otoki.

Niektóre funkcje składowe podjąć argument, że obiekt docelowy żądanej nazwy.Można określić takie operand na kilka sposobów:

fn--obiekt wpłacone fn; Po wywołaniu function obiektu przechowuje kopięfn

fnref--wpłacone obiektu o nazwie fnref.get(); Po wywołaniu function obiekt zawiera odniesienie dofnref.get()

right--obiekt wpłacone, posiadanych przez function obiekturight

npc--wskaźnik null; Po wywołaniu function obiektu jest pusty

We wszystkich przypadkach INVOKE(f, t1, t2, ..., tN), gdzie f jest obiektem wpłacone i t1, t2, ..., tN lvalues typy są T1, T2, ..., TN odpowiednio, musi być poprawnie sformułowanym i, jeżeli Ret nie jest nieważne, konwertowany na Ret.

Pusty function obiektu nie posiadają wpłacone obiektu lub odwołanie do obiektu wpłacone.

Bb982519.collapse_all(pl-pl,VS.110).gifKonstruktory

function::function

Konstrukcje otoki, która jest pusty lub przechowuje wpłacone obiektu dowolnego typu z podpisem stałych.

Bb982519.collapse_all(pl-pl,VS.110).gifDefinicje TypeDef

function::result_type

Typ zwrotu przechowywane wpłacone obiektu.

Bb982519.collapse_all(pl-pl,VS.110).gifFunkcje składowe

function::assign

Przypisuje obiekt wpłacone obiekt tej funkcji.

function::swap

Zamiana dwóch obiektów wpłacone.

function::target

Testy, jeśli obiekt wpłacone przechowywane jest wpłacone określone.

function::target_type

Pobiera wpisz informacje na żądanie obiektu.

Bb982519.collapse_all(pl-pl,VS.110).gifOperatory

function::operator unspecified

Testy, jeśli istnieje obiekt wpłacone przechowywane.

function::operator()

Wywołuje obiekt wpłacone.

function::operator=

Zastępuje przechowywane wpłacone obiektu.

Wymagania

Nagłówek: <functional>

Obszar nazw: std

Zobacz też

Informacje

mem_fn Function

reference_wrapper Class